使用变量访问带连字符的属性
Accessing a hyphenated attribute using a variable
以下语法有效:
hello = $("html").find('[id=foo-var]').html();
但是我们如何通过一个变量指定"foo-var"呢?
var holder = "foo-var";
hello = $("html").find('[id=' + holder + ']').html();
这当然不行。
更改引号 "'"
var holder = "foo-var";
hello = $("html").find('[id="' + holder + '"]').html();
如果属性值包含受限字符,则需要用引号引起来:
var holder = "foo-var";
var hello = $("html").find('[id="' + holder + '"]').html();
但是 鉴于 id
属性在 DOM 中必须是唯一的,您应该使用id
第一例选择器:
var holder = "foo-var";
var hello = $('#' + holder).html();
如果您有多个具有相同 id
的元素,那么这是一个单独的问题,需要在您的 HTML 中解决。
您可以使用模板文字以获得更好看的语法
$("html").find(`[id=${holder}]`).html();
以下语法有效:
hello = $("html").find('[id=foo-var]').html();
但是我们如何通过一个变量指定"foo-var"呢?
var holder = "foo-var";
hello = $("html").find('[id=' + holder + ']').html();
这当然不行。
更改引号 "'"
var holder = "foo-var";
hello = $("html").find('[id="' + holder + '"]').html();
如果属性值包含受限字符,则需要用引号引起来:
var holder = "foo-var";
var hello = $("html").find('[id="' + holder + '"]').html();
但是 鉴于 id
属性在 DOM 中必须是唯一的,您应该使用id
第一例选择器:
var holder = "foo-var";
var hello = $('#' + holder).html();
如果您有多个具有相同 id
的元素,那么这是一个单独的问题,需要在您的 HTML 中解决。
您可以使用模板文字以获得更好看的语法
$("html").find(`[id=${holder}]`).html();