我如何扩展此输入验证?

时间:2012-07-22 18:18:35

标签: jquery

我正在收集表单输入值并使用localstorage来保存它们。

这是检查其中一个输入并执行我想要的代码的代码 - 但仅用于一个输入:

$('#refresh').click(function() {
    if (localStorage['t'] == null || localStorage['t'].length == 0) {
        $("input#t").css("background-color", "yellow");
        return;
    }
    save_data()
    window.location = 't4.html';
});

因此,我将有更多的输入值(t,t1,t2 ......),并希望突出显示样本中执行的任何/所有空值。验证插件似乎是不必要的,因为这是唯一需要验证的地方。另外,我不想检查输入条目,但仅在执行#refresh.click时才会检查,因此用户只有一个“唠叨”。

感谢新手的帮助!

建议

更新: .each,但怀疑必须有比这更好的方法:

  $('#refresh').click(function () {

      $("input").each(function (i) {

        if(localStorage['t'] == null || localStorage['t'].length == 0 ) {
        $("input#t").css("background-color","yellow");
        return;
        } 

        if(localStorage['t1'] == null || localStorage['t1'].length == 0 ) {
        $("input#t1").css("background-color","yellow");
        return;
        }

        if(localStorage['t2'] == null || localStorage['t2'].length == 0 ) {
        $("input#t2").css("background-color","yellow");
        return;
        }

        if(localStorage['t3'] == null || localStorage['t3'].length == 0 ) {
        $("input#t3").css("background-color","yellow");
        return;
        }

        else {

        save_data()

        window.location = 't4.html';
        }
      });
    });

1 个答案:

答案 0 :(得分:1)

你可以使用jQuery的.each()迭代每个元素:)

.each()