例如,下面選擇的分割使用id = 「2」:如何在ID中使用變量來選擇jQuery中的元素?
row = $("body").find("#2");
我怎樣做這樣的事情:
row_id = 5;
row = $("body").find(row_id);
上述語法產生錯誤。我檢查了jQuery文檔,並在這裏回答沒有成功。
例如,下面選擇的分割使用id = 「2」:如何在ID中使用變量來選擇jQuery中的元素?
row = $("body").find("#2");
我怎樣做這樣的事情:
row_id = 5;
row = $("body").find(row_id);
上述語法產生錯誤。我檢查了jQuery文檔,並在這裏回答沒有成功。
row = $("body").find('#' + row_id);
更重要的是做額外的body.find對性能沒有影響。要做到這一點,正確的方法很簡單:
row = $('#' + row_id);
就是這樣!謝謝! – Tony 2009-04-13 14:25:24
我不知道很多有關jQuery的,但試試這個:
row_id = "#5";
row = $("body").find(row_id);
編輯:當然,如果變量是一個數字,你必須添加"#"
到前面:
row_id = 5
row = $("body").find("#"+row_id);
你可以這樣說:
row_id = 5;
row = $("body").find('#'+row_id);
有兩個問題與您的代碼
最短的方法是:
$("#" + row_id)
將搜索限制在身體上沒有任何好處。
此外,您應該考慮將您的id
s重命名爲更有意義的內容(並且根據Paolo的答案符合HTML標準),尤其是如果您還需要命名另一組數據。
好點 - 感謝澄清這一點。 – Tony 2009-04-13 15:04:00
我喜歡簡潔。我只是用qTip2工具提示來使用它,效果很好。我有點好奇,爲了響應用戶輸入而產生大量「及時」性能損失。 – 2017-11-22 19:04:35
按ID查找時不需要做$('body').find();
;沒有性能收益。
還請注意,具有以數字開頭的ID not valid HTML:
ID和名稱標記必須以字母開頭([A-ZA-Z])和之後可以是任何數量的字母,數字([0-9]),連字符(「 - 」),下劃線(「_」),冒號(「:」)和句點(「。」)。
哇,五個答案完全一樣...... – Zifre 2009-04-13 14:48:02