2011-03-15 69 views
0

我有一個包含id的隱藏列表。我使用此列中的值並將其發送到服務器,以便我可以獲取正確的記錄。用jquery或javascript查找確切的值?

我沒有使用datatables.net,我允許用戶更新該行。所以他們點擊一個編輯按鈕,彈出一個對話框並對其進行編輯。一旦他們達到更新,我發回所有的值包括id(存儲在一個隱藏的文本字段)。

因此,我需要更新數據表,我發現的快速方法是使用它的插件,它允許您獲取html行並將其傳遞給數據表(而不是傳遞數組中的每個列值)。

所以首先我需要刪除行然後添加新的更新行。

我有一個問題,雖然我不知道如何找出刪除哪一行。

我可以有一些全局變量來存儲行對象,以及何時該刪除它時使用該對象。不過,我真的不想這樣做,因爲我不想要一個全局變量,只要我能夠幫助它即可。

所以帶有值的隱藏列有一個類名,我用它作爲slector(class =「hidden」)。

所以我想知道我怎麼能做一個搜索過濾只有表格單元格有這個類名稱,具有確切的價值(說55,我可以從隱藏的文本框中使用)。

我正在考慮使用jquery包含但可能會得到可能有這個數字的東西。我想要一個精確匹配。

+1

您使用哪種服務器端環境?聽起來像.Net。如果是這樣,你可以爲此添加一個標籤。 – nfechner 2011-03-15 20:00:58

+0

值是'td'中的文本還是某種'input'? – 2011-03-15 20:02:20

+0

您可以將數據庫ID存儲在tr元素的id中,例如。 '' – 2011-03-16 10:44:02

回答

1

嘛,像

$('body').find('.hidden').filter(function(elem) { ... }).remove(); 

與任何合適的測試中...

2

我建議:

$('td.hidden:contains("55")') 

這將找到「隱藏」,它包含字符串「55」 class的任何td,這是稍微有問題的,因爲它會匹配字符串「555」 ,「055」等


編輯細化上述一點,使之具體爲所需的值:

$('td.hidden:contains("55")').filter(
    function(){ 
     return $(this).text() == '55'; 
    }).closest('tr').addClass('highlight'); 

JS Fiddle demo

JS Fiddle demo, allowing searching

雖然filter()將很好地工作而不會:contains()僞選擇器I,以便減少元件的數目即jQuery有合作,通過保留:contains()

參考文獻:

+0

這工作正常 – 2011-05-24 01:17:11

相關問題