Javascript 数组长度不随.push()增加

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

此问题涉及以下代码。我有一个变量数组,我将名为person\u list的元素推送到该数组中。我的期望是,当我将元素推送到person_列表时(通过按add按钮),数组的大小应该会增加。但事实并非如此。每当我按下add按钮时,输入框中的当前值就会覆盖数组的第一个元素,并且数组大小不会增加。我做错了什么

$(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;
        });
    }