在不使用ID或类的情况下在空选择框上显示警报

时间:2014-07-20 13:02:29

标签: javascript jquery html

我有这个JS代码:

$(document).ready(function(){
    $('input[type=select]').each(function() {
        if ($(this).text() == "") {
            alert("empty");
         }
    });
});

我想在我的网页上为每个选择框显示一个警告框,但不使用ID或类

这是我尝试过的小提琴:http://jsfiddle.net/Kb9da/

4 个答案:

答案 0 :(得分:0)

这是我的jquery解决方案:

$(document).ready(function(){
    $('select').change(function() {
        if ($(this).find("option:selected").text() == "Empty Option") {
            alert("empty");
        }
    });
});

<强> DEMO HERE

希望这能解决问题。

此致

答案 1 :(得分:0)

使用.change()事件/处理程序

$(document).ready(function(){
    $('select').on('change', function () {
       if ($(this).find(":selected").text() == "Empty Option") {
            alert("empty");
         }
    });
});

<强> JSFiddle Demo

您还可以通过在每个.val()上设置值属性来使用<option>

由于第一个value=""option ...这也应该有效:

if ($(this).find(":selected").val() == "") {
// code here
}

<强> JSFiddle Demo

如果您只想在页面加载时显示警报,请使用:

$('select').each(function () {

答案 2 :(得分:0)

哟不需要使用.each循环来实现这一目标。您可以使用change事件来处理它:

$('select').on("change",
 function() {
    if ($(this).val() == "") {
        alert("empty");
     }
});

fiddle

同样select 输入。

答案 3 :(得分:0)

使用以下jquery代码验证所有选择框。我使用了变更事件。

JS

$('select').change(function() {
    if ($(this).val() == "") {
        alert(" empty "+ ($('select').index($(this))+1 ));
     }
});

DEMO link with multiple selectbox