JQUERY检查INPUT文本值是否为空并提示警报

时间:2013-09-16 09:13:13

标签: javascript jquery forms validation submit

如果单击提交按钮,输入字段的值为空,如何使用JQUERY显示警报?

<input type="text" id="myMessage" name="shoutbox_msg" size="16" class="field_nosize" maxlength="150">&nbsp;
<input id="submit" type="submit" name="submit_post" class="button_nosize" value="Senden" onclick="sendMessage(); clearInput();">

6 个答案:

答案 0 :(得分:70)

$('#submit').click(function(){
   if($('#myMessage').val() == ''){
      alert('Input can not be left blank');
   }
});

<强>更新

如果您不想要空格,也可以使用jQuery.trim()

删除它们
  

描述:从字符串的开头和结尾删除空格。

$('#submit').click(function(){
   if($.trim($('#myMessage').val()) == ''){
      alert('Input can not be left blank');
   }
});

答案 1 :(得分:6)

更好的一个就在这里。

$('#submit').click(function()
{
    if( !$('#myMessage').val() ) {
       alert('warning');
    }
});

并且您不一定需要.length或查看它是否> 0,因为无论如何空字符串的评估结果为false,但是如果您想要出于可读性目的:

$('#submit').on('click',function()
{
    if( $('#myMessage').val().length === 0 ) {
        alert('warning');
    }
});

如果您确定它将始终在textfield元素上运行,那么您可以使用this.value。

$('#submit').click(function()
{
      if( !document.getElementById('myMessage').value ) {
          alert('warning');
      }
});

另外你应该注意$(&#39;输入:text&#39;)抓取多个元素,指定一个上下文或者如果你只想引用一个单独的元素就使用this关键字(前提是有一个文本字段)语境的后代/子女)。

答案 2 :(得分:2)

如果您想在出错后专注于相同的文字,也可以试试这个。

如果要在段落中显示此错误消息,则可以使用此消息:

 $(document).ready(function () {
    $("#submit").click(function () {
        if($('#selBooks').val() === '') {
            $("#Paragraph_id").text("Please select a book and then proceed.").show();
            $('#selBooks').focus();
            return false;
        }
    });
 });

答案 3 :(得分:0)

使用trim

从输入中删除空格(如果用户输入空格),检查空输入
$(document).ready(function(){     
       $('#button').click(function(){
            if($.trim($('#fname').val()) == '')
           {
               $('#fname').css("border-color", "red");
               alert("Empty"); 
           }
     });
});

答案 4 :(得分:0)

您可以创建一个函数来检查输入类中的每个输入,如下所示

 function validateForm() {
  
    var anyFieldIsEmpty = jQuery(".myclass").filter(function () {
        return $.trim(this.value).length === 0;
    }).length > 0

    if (anyFieldIsEmpty) {
        alert("Fill all the necessary fields");
        var empty = $(".myclass").filter(function () {
            return $.trim(this.value).length === 0;
        })
        empty.css("border", "1px solid red");
        return false;
    } else {
        return true;
    }
}

它的作用是检查“myclass”中的每个输入,如果为空,它会发出警报并为输入的边框着色,用户将识别出未填充的输入。

答案 5 :(得分:0)

改用它,因为如果有多个空格,仅尝试检查值是否不等于空字符串将无济于事。

('#submit').onclick = function(){
    let count = 0;
    let notEmpty = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
        
    for(let i=0; i < $('#myMessage').value.length; i ++){

        for(let j = 0; j < notEmpty.length ; j++){
    
                    if($('#myMessage').value[i]== notEmpty[j]){
                            count += 1;
                    }
            }
    }

    if(count==0){
    
        alert("You cannot leave this blank");
    }

}