2015-11-20 210 views
1

到目前爲止,我已經在下面了,我想只在該行不存在的情況下插入一行。你將如何檢查一行是否已經存在jquery

我使用.find()是正確的用法嗎?我也試圖包含()

$(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

你是不是在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(''); 
     } 

    }; 

}); 

}); 
+0

試圖在自己內部找到一個元素? :) – PeterKA

+0

是真的關於這個;) – mapodev

+0

現在看起來不錯;) – PeterKA

1

替換:

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

有了:

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