如果我理解正确,您想使用函数返回的任何内容来更改 HTML 元素的属性。
假设您在 HTML 文档中的某处有以下 BUTTON 元素:
<button id="myButton" name="John"> See my name. </button>
可以在 jQuery 中使用类似这样的东西来更改属性“名称”:
var new_name = "Colin";
$("#myButton").attr("name", new_name);
因此,如果您想使用函数返回的任意值更改此按钮的名称,只需确保该函数返回一个字符串并执行以下操作:
var new_name = myFunction(); // This functions returns a string.
$("#myButton").attr("name", new_name);
...或更紧凑的版本:
$("#myButton").attr("name", myFunction());
但是,如果您想要一个函数不仅更改特定的预定义值,而且该函数会自行选择一个值,该怎么办?jQuery 中的attr()
函数允许一个对象作为参数。该对象将包含在属性/值对中。之前的代码可能是:
var new_attribute = {"name": "Colin"};
$("#myButton").attr(new_attribute);
就像之前所做的那样,您可以拥有一个返回对象的函数并将{"name": "value"}
该函数作为.attr
.
var new_attr = myOtherFunction(); // This functions returns an object
$("#myButton").attr(new_attr);