似乎无法用jQuery更改文本输入的值

时间:2009-12-05 20:54:03

标签: jquery

我希望在某个函数通过时用jQuery更改文本输入的值。我用了这段代码:

$('#find').attr("value", "newvalue");

但它没有改变它。这是我想要改变的输入的标记:

<input type="text" id="find" class="input" />

我知道它正在接近这个代码,因为它的jQuery执行和工作。

任何帮助都将不胜感激,谢谢。

4 个答案:

答案 0 :(得分:7)

$("#find").val("newvalue");

不确定为什么你的工作不起作用。 您可能还需要输入上的name属性?不确定这是否重要......

它也可以在创建输入之前运行。在哪种情况下将其包装在

$(document).ready(function(){
    //anything you want to do once the elements are all there.
});

或者只是在源代码中的元素之后粘贴脚本块(这可能是一个有争议的建议)。

答案 1 :(得分:1)

尝试使用$('#find')。val('newvalue');

答案 2 :(得分:1)

您需要更改元素的道具值。

$('#find').prop("value", "newvalue");

attr :保存元素在页面加载期间的值

prop :动态保存元素的值...当前状态

http://api.jquery.com/prop/

答案 3 :(得分:0)

您的代码应该可以正常运行,您确定您的选择器正在做正确的事吗?

作为一个简单的测试,试试这个:

$("#find").css({'background-color' : 'yellow'});

如果选择器是正确的,那么背景项将变为黄色。

此外,你确定代码被命中,在命中代码之前可能会出现错误,尝试在代码行上插入一个断点并确保它被命中。