好的。所以我有这个代码
<input id="suspect" value="" type="text">
<input id="reason" value="" type="text">
<textarea></textarea>
var suspect = $('input#suspect').text();
var reason = $('input#reason').text();
$('textarea').val('' + suspect + ' and ' + reason + '')
然后我在这两个输入中都放入了一些内容,然后文本区域从输入中接收不到任何值。如何解决这个问题?
最佳答案
因为当您设置变量时,您尝试从中恢复输入文本的元素内没有文本(顺便说一句,对于您正在查找的输入 .val()
)。如果绑定(bind)到 focus
事件:
$('textarea').focus(
function(){
var suspect = $('#suspect').val(),
reason = $('#reason').val();
$(this).val('' + suspect + ' and ' + reason + '');
});
此外,在这种情况下(因为您已将 JavaScript 放置在 DOM 中的元素之后,尽管您省略了 <script></script>
标记),您可能可以不使用 $(document).ready()
事件处理程序,但我通常建议用这样的方式包装 jQuery,只是为了确保事件在元素之后绑定(bind)到它们所绑定(bind)的元素存在于 DOM 中。
引用文献:
关于javascript - 从输入文本框中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10265469/