使用jquery更改输入值?

时间:2013-09-19 11:29:17

标签: jquery

我有一个包含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”,在一个表中,就像你在代码中看到的一样......

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您希望使用函数返回的任何内容更改HTML元素的属性。

假设您在HTML文档中的某处有以下BUTTON元素:

<button id="myButton" name="John"> See my name. </button>

可以在jQuery中使用类似的东西更改属性“name”:

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);