如果我第一次输入字符串,它的工作正常。但是,如果我尝试更改它,它就不会起作用,因为nameArray正在添加索引中的所有值。我试着清空数组写namArray = [];在$(" #Code")之后.val([]);但它在Name textfield&amp ;;中每次更改后都会使nameArray长度为1。我没有得到我的结果。这是我的代码。
var nameArray = [];
var count;
var i;
$(document).ready(function () {
$("#Name").on('input', function () {
$("#Code").val([]);
var getName = $("#Name").val();
nameArray.push(getName);
if (nameArray.length >= 3) {
count = 3;
}
else if (nameArray.length <= 3) {
count = nameArray.length;
}
for (i = 0; i <= count; i++) {
$('#Code').val(nameArray[i]);
}
});
});
我只想清除nameArray,如果文本字段发生了变化,那么它可以从textfield&amp;中取出新的更改字符串。从而工作。
答案 0 :(得分:2)
将代码设置为名称的前4个字符。
$(document).ready(function () {
$("#Name").on('input', function () {
$("#Code").val(this.value.substring(0, 4));
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="Name" placeholder="Name">
<input type="text" id="Code" placeholder="Code">
&#13;