我制作的网页将通过ajax动态生成大量输入。我想检索更改的任何输入的id(以及最新的值)。以下是我网站的一个非常简单的示例。现在我使用委托附加一个事件处理程序来检索输入的id和new值,但是我无法得到我想要的值。我的实施不正确吗?我是jquery的新手,所以任何帮助都会受到赞赏。感谢。
<html>
<head>
</head>
<body>
<div class="container">
<form id="test_form">
<input type="submit">
</form>
<div id="inputs">
</div>
</div>
<script src="../static/js/jquery-1.11.0.min.js"></script>
<script src="../static/js/loader.min.js"></script>
<script>
$("#test_form").submit(function() {
// this variable is just an example, the actual variable will be
// returned via ajax and will have 1-20 inputs
var inputs = {
input1: "default1",
input2: "default2"
}
for (var key in inputs) {
var li = $("<li>")
var input = $("<input>")
input.attr({
type: "text",
value: inputs[key],
id: "id_" + key
})
li.append(input)
$("#inputs").append(li)
input.onchange
}
return false; // stop the form from submitting
});
var onChangeFunction = function(){
// does not show id of the input the text was changed on
alert($(this).id)
alert($(this).value)
}
$("#inputs").delegate("input", "change", onChangeFunction)
</script>
</body>
</html>