-1

我有一个包含 10 列的表和一个基于每列上的文本输入的过滤器修饰符,我需要创建一个按钮来更改具有自定义值的特定过滤器(可能是一个,可能是四个,可能是全部..):

跨度和表格的HTML代码:

<th class="center" rowspan="1" colspan="1">
    <span class="filter_column filter_text">
        <input type="text" class="text_filter search_init" value="Hora">
    </span>
</th>

可能吗?

好吧,我想要的是用我自己的函数的结果来改变 value="Hora",就像你在提供的代码中看到的那样......

4

1 回答 1

2

如果我理解正确,您想使用函数返回的任何内容来更改 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);
于 2013-09-19T14:04:06.070 回答