JS判断输入框的值是否为空

本文详细介绍使用JavaScript判断输入框内容是否为空、仅含空格或为null的多种方法,包括去除前后空格、正则表达式匹配及类型检查。

JS判断输入框的值是否为空

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>JS判断输入框的值是否为空</title>
</head>
<body>
<input type="text" id="txt"/>
<input type="button" value="检测" id="btn">
<script>
    var oTxt = document.getElementById('txt');
 
    var oBtn = document.getElementById('btn');
    function isnull(val) {
 
        var str = val.replace(/(^\s*)|(\s*$)/g, '');//去除空格;
 
        if (str == '' || str == undefined || str == null) {
            //return true;
            console.log('空')
        } else {
            //return false;
            console.log('非空');
        }
    }
 
    oBtn.onclick = function () {
 
        isnull( oTxt.value );
 
    }
 
</script>
</body>
</html>
var strings = ''; 
if (string.length == 0) 
{ 
alert('不能为空'); 
}

判断字符串是否为“空”字符即用户输入了空格

var strings = ' '; 
if (strings.replace(/(^s*)|(s*$)/g, "").length ==0) 
{ 
alert('不能为空'); 
}

判断输入字符串是否为空或者全部都是空格

function isNull( str ){
	if ( str == "" ) 
		return true;
	var regu = "^[ ]+$";
	var re = new RegExp(regu);
	return re.test(str);
}

如果有null时上面代码就无法正常判断了,下面代码是判断为null的情况

var exp = null; 
if (exp == null) 
{ 
	alert("is null"); 
}

exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。

注意:要同时判断 null 和 undefined 时可使用本法。 代码如下

var exp = null; 
if (!exp) 
{ 
alert("is null"); 
}

如果 exp 为 undefined,或数字零,或 false,也会得到与 null 相同的结果,虽然 null 和二者不一样。注意:要同时判断 null、undefined、数字零、false 时可使用本法。代码如下

var exp = null; 
if (typeof exp == "null") 
{ 
alert("is null"); 
}

为了向下兼容,exp 为 null 时,typeof null 总返回 object,所以不能这样判断。

<script type="text/javascript">
function testuser(){
var i= document.getElementByIdx_x("aa");
if (i.value=="null")
{
alert("请登录后再发表留言!")
return false;
}
else
{
alert(i.value)
return true;
}
}
</script>

以上这篇js判断输入字符串是否为空、空格、null的方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

在使用 Vue 和 Element UI 开发的应用中,判断输入框内容是否是一个常见的需求,通常用于表单验证或交互控制。可以通过以下方式实现: ### 1. 使用 `v-model` 绑定输入框内容 Element UI 的 `<el-input>` 组件支持 `v-model` 指令,可以将输入框绑定到 Vue 实例的数据属性中。通过监听该属性的变化,可以判断输入内容是否。 示例代码如下: ```vue <template> <div> <el-input v-model="inputValue" placeholder="请输入内容"></el-input> <p v-if="isEmpty">输入框不能为</p> </div> </template> <script> export default { data() { return { inputValue: '', isEmpty: false }; }, watch: { inputValue(newVal) { this.isEmpty = newVal.trim() === ''; } } }; </script> ``` 在上述代码中,通过 `watch` 监听 `inputValue` 的变化,并使用 `trim()` 方法去除前后格后判断是否字符串。 ### 2. 使用表单验证机制 Element UI 提供了强大的表单验证功能,可以通过 `<el-form>` 和 `<el-form-item>` 组件实现输入框验证。 示例代码如下: ```vue <template> <el-form :model="formData" :rules="rules" ref="formRef"> <el-form-item label="输入框" prop="inputField"> <el-input v-model="formData.inputField"></el-input> </el-form-item> <el-button @click="submitForm">提交</el-button> </el-form> </template> <script> export default { data() { return { formData: { inputField: '' }, rules: { inputField: [ { required: true, message: '输入框不能为', trigger: 'blur' }, { min: 1, max: 50, message: '长度在1到50个字符', trigger: 'blur' } ] } }; }, methods: { submitForm() { this.$refs.formRef.validate(valid => { if (valid) { alert('提交成功'); } else { console.log('验证失败'); return false; } }); } } }; </script> ``` 在上述代码中,通过 `rules` 定义了 `inputField` 的验证规则,其中 `required: true` 表示该字段不能为,`message` 是提示信息,`trigger: 'blur'` 表示在失去焦点时触发验证。 ### 3. 自定义指令实现判断 如果希望在多个组件中复用判断输入框是否的逻辑,可以使用 Vue 的自定义指令来实现。 示例代码如下: ```javascript // 自定义指令:v-check-empty Vue.directive('check-empty', { bind(el, binding, vnode) { const inputElement = el.querySelector('input'); inputElement.addEventListener('input', () => { const value = inputElement.value.trim(); if (value === '') { vnode.context[binding.arg] = true; } else { vnode.context[binding.arg] = false; } }); } }); ``` 在模板中使用该指令: ```vue <template> <div> <el-input v-check-empty:isEmpty v-model="inputValue" placeholder="请输入内容"></el-input> <p v-if="isEmpty">输入框不能为</p> </div> </template> <script> export default { data() { return { inputValue: '', isEmpty: false }; } }; </script> ``` 通过自定义指令 `v-check-empty`,可以在输入框内容变化时动态更新 `isEmpty` 状态。 ### 4. 使用计算属性判断输入框内容 如果需要在模板中直接判断输入框内容是否,可以使用计算属性来实现。 示例代码如下: ```vue <template> <div> <el-input v-model="inputValue" placeholder="请输入内容"></el-input> <p v-if="isInputEmpty">输入框不能为</p> </div> </template> <script> export default { data() { return { inputValue: '' }; }, computed: { isInputEmpty() { return this.inputValue.trim() === ''; } } }; </script> ``` 在上述代码中,通过计算属性 `isInputEmpty` 判断 `inputValue` 是否字符串。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值