【发布时间】:2014-11-19 02:37:44
【问题描述】:
我有一个按钮:
<button class="btn btn-info continue">
<i class="ace-icon fa fa-check bigger-110"></i>
Continue
</button>
点击:
$(".continue").click(function(e) {
currForm = $(this).parents('form');
e.preventDefault();
});
我可以很容易地获得 id:currForm.attr('id');,但我可以将此 id 的值设置为变量吗?
类似php的变量变量:
$a = 'hello';
$$a = 'world';
echo $hello;
编辑:我不想更改元素的 id。我想获取此 ID 并将其用作 javascript 变量的名称。
例如,我在上面提供的元素位于 ID='example_id' 的 form 中。 currForm.attr('id') 会给我example_id,我想设置一个变量example_id 并为其赋值。
var example_id = 'some value';
【问题讨论】:
-
你的解释有点模糊。您可以通过 currForm.attr('id', 'your new id'); 设置 id;
-
您应该没有理由创建这样的动态变量。这听起来像XY Problem。你到底想做什么?为什么不使用对象属性而不是变量。
-
...仅供参考,您可以使用
this.form获取表单,这样您就无需创建jQuery 对象并使用.parents()。然后this.form.id会给你ID。这将比您目前正在做的快很多很多倍。 -
@squint 是正确的。您不需要这样做。请解释您的代码的实际用途。另外
$(this).closest('form')比使用parents()更好 -
...您还应该知道,您可以使用
.data()方法将数据与元素直接关联。这似乎是您所追求的,因为您希望在元素 ID 之后命名变量。由于各种原因,我不是特别喜欢使用.data(),但它可能适合你需要的任何东西。
标签: javascript php jquery