你如何检查一行是否已经存在jquery

时间:2015-11-20 14:59:41

标签: javascript jquery

到目前为止,我有以下内容,只有当该行尚不存在时,我才想进行检查。

我正在使用.find()是正确的用法?我也试过contains()

$(document).ready(function(){
$('#add').click(function() {

    var data = $('#skusearch').val();
    if (data.length) 
    {

        var data = $('#skusearch').val().split('-');
        var result =$('tr').find(data[0]);
        if (result === true)
        {
            console.log("row already exists")
        }
        else 
        {
            $('tbody').append("<tr id='"+data[0]+"'><td>"+data[0]+"</td><td>"+data[1]+"</td><td data-editable='true'>1</td><td><center><i class='fa fa-trash-o'></i></center></td></tr>");
            $('#table').editableTableWidget();
            $('#skusearch').val('');
        }

    };

});

});

2 个答案:

答案 0 :(得分:2)

您没有搜索ID,因此请将其更改为"#" + data[0],同时不检查true,因为find会返回搜索到的对象

$(document).ready(function(){

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

    var data = $('#skusearch').val();
    if (data.length) 
    {

        var data = $('#skusearch').val().split('-');
        var result = $("#" + data[0]);
        if (result.length)
        {
            console.log("row already exists")
        }
        else 
        {
            $('tbody').append("<tr id='"+data[0]+"'><td>"+data[0]+"</td><td>"+data[1]+"</td><td data-editable='true'>1</td><td><center><i class='fa fa-trash-o'></i></center></td></tr>");
            $('#table').editableTableWidget();
            $('#skusearch').val('');
        }

    };

});

});

答案 1 :(得分:1)

替换:

    var result =$('tr').find(data[0]);
    if (result === true)

使用:

    var result = $('#' + data[0]).length;
    if( result )