输入变量应存储输入字段的值,但存储未定义

时间:2018-10-16 11:18:00

标签: jquery html css

请查看以下代码。 “变量输入应存储输入字段的值,但存储的是未定义的值”

var input = $("#input-item").val();
var count = 0;
$(document).ready(function() {
$("#add-item").click(function() {

    if(input !== "" || input !== null) {
        $("#ulTodo").append("<li " + "name=li" + count + ">" + input + "</li>");
        count += 1;
    }

    else {
        return false;
    }
});
});

1 个答案:

答案 0 :(得分:0)

问题:变量inputundefined

  

解决方案:

     

1)您已经为外部点击事件分配了变量值,   表示开头没有值

     

2)将var input = $("#input-item").val();应用于   $("#add-item").click()事件

检查以下代码:

var count = 0;
        
$(document).ready(function () {
    $("#add-item").click(function () {
        var input = $("#input-item").val();//input variable assigned in click event
        if (input !== "" || input !== null) {
            $("#ulTodo").append("<li " + "name=li" + count + ">" + input + "</li>");
            count += 1;
        }
        else {
            return false;
        }
    });
});
p {
    margin-top:20px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type="text" id="input-item" name="input-item" placeholder="add an item to the list...">
<button id="add-item">Add this item</button>

<p>Item list as below :</p>
<ul id="ulTodo">
    <li>this is item 1</li>
</ul>