Javascript 数组长度不随.push()增加
此问题涉及以下代码。我有一个变量数组,我将名为person\u list的元素推送到该数组中。我的期望是,当我将元素推送到person_列表时(通过按add按钮),数组的大小应该会增加。但事实并非如此。每当我按下add按钮时,输入框中的当前值就会覆盖数组的第一个元素,并且数组大小不会增加。我做错了什么Javascript 数组长度不随.push()增加,javascript,jquery,html,web,Javascript,Jquery,Html,Web,此问题涉及以下代码。我有一个变量数组,我将名为person\u list的元素推送到该数组中。我的期望是,当我将元素推送到person_列表时(通过按add按钮),数组的大小应该会增加。但事实并非如此。每当我按下add按钮时,输入框中的当前值就会覆盖数组的第一个元素,并且数组大小不会增加。我做错了什么 $(function() { window.person_list = []; btns_event_listener(); }); function btns_event_listen
$(function() {
window.person_list = [];
btns_event_listener();
});
function btns_event_listener() {
$("#add_btn").click(function() {
person_list.push($("#_IWID_Persons_field").val());
alert(person_list.length);
});
}
以下是相关的HTML:
<tr id="_IWID_Persons_Config">
<td width="20%" class="lotusFormLabel lotusFormFieldRow lotusNowrap"><label for="name"> Include Persons: </label></td>
<td class="lotusFormFieldRow">
<input type="text" value="" class="lotusText" id="_IWID_Persons_field">
<button id="add_btn">Add</button>
</td>
<td width="40%" class="lotusFormFieldRow"></td>
</tr>
包括:
添加
我认为您希望将人员列表
存储为变量
,并在“btns事件侦听器”功能的范围内
示例
var person\u list=[]
我已经创建了一个带有建议的列表。我认为您希望将
人员列表
存储为var
,并在“BTN\u事件侦听器”功能的范围内
Please check out this..
$(function() {
var person_list = [];
btns_event_listener(person_list);
});
function btns_event_listener(person_list) {
$("#add_btn").click(function() {
person_list.push($("#_IWID_Persons_field").val());
alert(person_list.length);
return false;
});
}
示例
var person\u list=[]
我创建了一个带有建议的字段。什么是
\u IWID\u Persons\u字段
?它应该是“\uiwid\u Persons\u字段”。我修好了。什么是$(“#IWID_Persons_field”)
?你确定吗?由于某种原因,它上的.val没有返回null或未定义?请检查链接是否正常工作properly@Kevin如果他什么也不推,长度就不会增加。任何值(包括未定义值)在按下时都会增加长度<代码>变量a=[];a、 推送(未定义);console.log(a.length);//1什么是\u IWID\u Persons\u字段
?它应该是“\u IWID\u Persons\u字段”。我修好了。什么是$(“#IWID_Persons_field”)
?你确定吗?由于某种原因,它上的.val没有返回null或未定义?请检查链接是否正常工作properly@Kevin如果他什么也不推,长度就不会增加。任何值(包括未定义值)在按下时都会增加长度<代码>变量a=[];a、 推送(未定义);console.log(a.length);//1但是,如果我想在函数之外使用此数组,该怎么办?这并不能解释OP的代码为什么不能正常工作。但是,如果我想在函数之外使用此数组,该怎么办?这不能解释OP的代码为什么不能正常工作。
Please check out this..
$(function() {
var person_list = [];
btns_event_listener(person_list);
});
function btns_event_listener(person_list) {
$("#add_btn").click(function() {
person_list.push($("#_IWID_Persons_field").val());
alert(person_list.length);
return false;
});
}