我正在嘗試在我的網頁中實現和撤消功能。這是一個充滿可編輯的texboxes表,所以想出一個id很難。我決定根據表信息製作一個id名稱。以下是一個ID例如:jquery通過使用字符串更改文本框的值
HW3=:25626=:10000
HW3是標頭,25626是該行的ID列和10000引用此表。對於撤消功能我用
$(this).attr('id);
得到id和這個函式是基於事件的焦點時調用,或單擊這就是爲什麼「這」工作。我拿的電流值,並將其添加到最終像
$(this).attr('id)+":="+old_value;
監守的ID名稱被分隔這樣做是「=:」這樣我就可以做兩個裂口得到這個數據回的部分。可能不是最好的,我明白。
我遇到的問題是,當我試圖拔出ID,並把它放回作爲一個元素出現錯誤:
Uncaught Error: Syntax error, unrecognized expression: #HW3=:25626=:10000
我試圖做的事:
var s = "#"+temp[0];
var element = $(s);
temp [0] = = HW3 =:25626 =:10000。這是拋出此錯誤的第二行。
重要!具有我正在使用的ID的表不是在開始時創建的。 JQuery調用一個在頁面加載後構建它的方法。直到創建表之後,才能訪問此方法。我知道你不能將事件綁定到元素,直到他們加載後,但我不確定是否是相同的情況,因爲我永遠不會嘗試撤消不存在的文本框。畢竟它必須存在才能被插入到撤銷對象中。
任何幫助表示讚賞。
你怎麼想到的?如果'document.getElementById(temp [0])'會起作用,那麼'$(「#」+ temp [0])'也應該,不是嗎? – mplungjan 2013-04-29 05:26:18
@mplungjan:如果屬性包含會破壞選擇器的字符,則不會。 'foo.bar'是一個有效的ID,但它會使選擇器工作不正確。 – Blender 2013-04-29 05:27:46
什麼字符對選擇器無效,因爲這不起作用。但我也發現,即使手工輸入ID也不起作用,所以我想即時通過使用無效字符或其他東西。 – Brandon 2013-04-29 15:36:33