2
<div id="form">
<form action="">
<input type="button" id="sub"/>
</form>
</div>

单击提交按钮时,将使用 jquery 更改内容。

jQuery代码:

$(document).ready(function() {
    $('#sub').live('click', function() {
        var reg = "<form action=''><input type='text' id='text'/><input type='button' is='sub2'/></form>";
        $('#form').replaceWith(reg);
    });
});
$(document).ready(function() {
    $('#sub2').live('click', function() {
        $('#text').text("Some content");
    });
});

但我的问题是内容没有写入输入框。我该怎么做?另外如何使用id文本更改输入框的背景颜色?

4

2 回答 2

2

但我的问题是内容没有写入输入框。

您需要调用val()而不是text()因为 text() 没有为文本的输入类型定义。

$(document).ready(function(){
   $('#sub2').live('click', function () {
      $('#text').val("Some content");
   });
});
于 2012-11-17T13:26:50.430 回答
2

您的代码包含语法错误。您在var reg = "...";字符串 ( action="") 中使用双引号,需要将其转义或写为'

您还需要使用.val()来获取/设置输入元素的值,而不是.text()

也没有理由使用两个文档准备功能 - 只需将所有内容放在同一个中即可。

最后但同样重要的是,live()已弃用;改为使用on()(有关如何正确使用它,请参阅 jQuery 文档)

于 2012-11-17T13:26:58.643 回答