请问大手,怎么回事呢?
jquery代码(检测某个对象内部是否含有空值文本框):function if_null(objOrobjName){
alert($(objOrobjName).html());
    var num_from=$(objOrobjName).find('input:type="text":');
var num_to=$(objOrobjName).find('input:type="text"');
var reserve=$(objOrobjName).find('input:type="text"');
var rule=$(objOrobjName).find('input:type="text"');
    num_from.each(function(){if($(this).attr('value')=='')return true;});
num_to.each(function(){if($(this).attr('value')=='')return true;});
reserve.each(function(){if($(this).attr('value')=='')return true;});
rule.each(function(){if($(this).attr('value')=='')return true;});
return false;
}html代码例如:
<table id="tb_price_1" width="100%" height="100%" border="1" cellpadding="0" cellspacing="0" style="border-collapse:collapse">
        <tr>
          <td width="33%"><input name="hidden_ifNewPrice[]" type="hidden" id="hidden_ifNewPrice[]" value="1" />
            从
            <input name="num_from[]" type="text" size="4" id="num_from[]" />
            <span name="unit">件</span>到
            <input name="num_to[]" type="text" size="4" id="num_to[]" />
            <span name="unit">件</span></td>
          <td width="11%"><input name="price[]" type="text"  size="4" id="price[]" /></td>
          <td width="12%"><span id="span_stpr_0_">1</span></td>
          <td width="19%"><input name="reserve[]" type="text"  size="4" id="reserve[]" />
            <input name="hidden_ruleId[]" id="hidden_ruleId" type="hidden"  value="1" /></td>
          <td width="25%"><a href="javascript:void(0)" id="a_delPrice_1_0" onclick="delPriceInterval(this)">删除</a></td>
        </tr>
        <tr id="tr_priceB_1"  style="display:none">
          <td colspan="5"><input type="button" value="添加价格区间"  onclick="javascript:addPriceInterval(this,false)"/></td>
        </tr>
      </table>

解决方案 »

  1.   

    input:type="text":
    =>
    :text
      

  2.   

    哦。请问num_from.each(function(){if($(this).attr('value')=='')return true;});这些可对呢,好像不对,内部的文框的值都没添加,可是这些句检测不了。
      

  3.   

    if($(this).val().length==0) return true;
    这样试试
      

  4.   

    我写的那个可以,但是由于使用了each函数,第一次return时函数没有停止运行,好像还继续了下一次,each()内部那个函数如何退出循环?还是用break?
      

  5.   

    你那里return了,只是你执行了该函数 退出了当前的function所以你应该加个标识符
    function if_null(objOrobjName){
    alert($(objOrobjName).html());
      var num_from=$(objOrobjName).find('input:type="text":');
    var num_to=$(objOrobjName).find('input:type="text"');
    var reserve=$(objOrobjName).find('input:type="text"');
    var rule=$(objOrobjName).find('input:type="text"');
    var i = false;
      num_from.each(function(){if($(this).attr('value')=='')i=true;});
    if(i) {
       return true;
    }
    num_to.each(function(){if($(this).attr('value')=='')return true;});
    reserve.each(function(){if($(this).attr('value')=='')return true;});
    rule.each(function(){if($(this).attr('value')=='')return true;});
    return false;
    }
      

  6.   

    退出each的循环是用return false;你可以定义一个变量,用return false;退出循环, 最后返回那个变量!