【发布时间】:2011-05-22 14:44:05
【问题描述】:
我有以下 html 代码:
<div id='list'>
<ul></ul>
</div>
我有以下 jQuery 脚本:
function append_list(){
$('ul').append('<li><input type="image" name="original" value="'+SOMEVALUE+'"></li>');
}
function find_input(){
//some code to find the just appended input element.
}
$(document).ready(function(){
append_list();
console.log($('input'));
find_input();
});
当我查看浏览器控制台时,console.log 的输出只是一个空数组“[]”,但是如果我输入 console.log($('input'));页面加载后在我的浏览器控制台中,它可以反馈正确的数据... 我对 .append() 函数做了什么坏事吗?
感谢您的帮助。
----编辑----
谢谢大家,我想在我的问题中添加一些内容。
我已经尝试过你对 setTimeout(); 的建议;但仍然找不到我附加的输入元素。
我也将console.log($('input)); 添加到function append_list(); 中也没有帮助...现在我在这里堆叠:-(
【问题讨论】:
-
您对 append 函数的使用看起来不错。问题是
console.log在append_list()有机会完成之前正在运行。你想在这里完成什么? -
你好@Bryan,我想是在 append_list();完成后,我将得到 $('input[name="original"]') 的数组,然后我可以调用例如 $('input[name="original"]')[1].value 来获取供以后使用的价值。
标签: javascript jquery append