如果单击提交按钮,输入字段的值为空,如何使用JQUERY显示警报?
<input type="text" id="myMessage" name="shoutbox_msg" size="16" class="field_nosize" maxlength="150">
<input id="submit" type="submit" name="submit_post" class="button_nosize" value="Senden" onclick="sendMessage(); clearInput();">
答案 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");
}
}