例如,下面选择的分割使用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