jquery只在点击时添加行,如果它是空的?

时间:2010-04-20 03:56:51

标签: jquery insert row dynamic

下面的代码有效,因为如果我点击输入字段,它会添加另一行。我试图弄清楚,如果输入字段为空,如何

$("#tableSearchData > tbody > tr > td > input").bind('focus', function(){
                var row = $(this).closest("tr").get(0);
                if( row.className.indexOf("clicked")==-1 )
                {
                    var rowCopy=$(row).clone(true);
                                $(row).closest("tbody").append(rowCopy);
                                row.className+=" clicked";
                }
});

2 个答案:

答案 0 :(得分:0)

$("#tableSearchData > tbody > tr > td > input").bind('focus', function(){
      if ($(this).val() == "")
      {
                var row = $(this).closest("tr").get(0);
                if( row.className.indexOf("clicked")==-1 )
                {
                    var rowCopy=$(row).clone(true);
                                $(row).closest("tbody").append(rowCopy);
                                row.className+=" clicked";
                }
      }
});

答案 1 :(得分:0)

如果您只想确保文本框中没有字符,可以检查.val()是否为“”

if ($(this).val() === "")

如果你想确保文本框中的字符不是空格,那么你可以修剪val并检查空白

if ($.trim($(this).val()) === "")

如果您的类名被“单击”,那么您可以使用.hasClass()来检查该类是否存在于该元素上。

if (row.hasClass("clicked"))