-1

我有一个按钮和一些输入,我想让 jquery 在执行某些操作之前检查我是否没有输入为空:所以这就是我所做的:

$('#my_button)').click(function() {
if(
for(i=0;i<$('#my _button').parent().prev().children().children().length;i++){){ //this is to check if the inputs exist
$('#my_button').parent().prev().children().children().eq(i).val()!==''; // i've tried .val().is(:empty); but not working too
//so the test fails for somehow ! and the if condition doesn't work
// google chrome developers inspector gives me this error (Uncaught SyntaxError: Unexpected token for)
}
){
//do some action
}}

这是我的jsfiddl 测试

4

2 回答 2

0
<table>
 <tr>
  <td>
   <div><input id='i1'></div>
   <div><input id='i2'></div>  
  </td>
  <td><button id='my_button'>click me</button></td>
 </tr>
</table>

脚本:

    $('#my_button').on('click', function() {
        var in1 = $('#i1').val();
        var in2 = $('#i2').val();

        if(in1 != '' && in2 != ''){
               // do something
            }
            else{
              //alert

            }
    }
于 2013-01-15T15:40:53.240 回答
0

它会在 上为您提供意外令牌警告,for因为它是意外令牌。您不能for在 if 语句的布尔表达式中放置循环。

您将需要执行类似于此伪代码的操作:

$('#my_button').click(function() {
  succeed = true;
  for all of my inputs {
    if(input is empty){
       succeed = false;
    }
  }
  if(succeed) //do stuff
}
于 2013-01-15T15:43:19.397 回答