contains()始终返回true

时间:2016-01-30 16:01:31

标签: javascript jquery

我有一个动态创建的表,当我添加新行时,我需要检查表中是否已存在一本书。

function drawRow(obj) {
    var row = $("<tr>")
    row.append($("<td><p>" + obj.Id + "&nbsp;&nbsp;</p></td>"));
    row.append($("<td><p>" + obj.bookno+ "&nbsp;&nbsp;</p></td>"));
    row.append($("<td><p>" + obj.isbn + "&nbsp;&nbsp;</p></td>"));

    if ($(".bktbl tr").contains == obj.isbn) { // It shows me always false. I think this is not working properly
        alert("Already there!");
    } else {
        $(".bktbl table").append(row);
    }
}

1 个答案:

答案 0 :(得分:2)

您需要使用:contains() Selector以及长度属性

  

选择包含指定文本的所有元素。

 if($(".bktbl tr:contains('"+obj.isbn+"')").length)

而不是

 if ($(".bktbl tr").contains == obj.isbn) {