我的输入有问题。如果我更改某个元素的值,则输入会被清空,这使我无法保存文章。
现在有代码来捕获输入的清空,如果发生这种情况,请用另一个位于其旁边的textinput的值填充它。
我有以下代码,但是当输入的值变为空时不会被调用,被清空:
document.addEventListener('DOMContentLoaded',function() {
document.querySelector('input#created').onchange=changeCreatedDate;
},false);
function changeCreatedDate(event){
var pubup = jQuery("#publish_up").val();
jQuery("input#created").val(pubup);
}
因为这不起作用我尝试了其他的东西,但是当输入被清空时也没有调用它。
$("input#created").on("change paste keyup", function() {
var pubup = jQuery("#publish_up").val();
jQuery("input#created").val(pubup);
});
编辑:当我用keuyp或我认识的改变事件调用代码时,代码实际上有效。问题在于代码不会被调用。我不知道为什么,也许是因为没有注册变更。如何确保计算机能够看到更改,我需要使用哪种功能。
答案 0 :(得分:0)
尝试使用addEventListener()方法,您也可以使用getElementById(),因为您选择了ID:)
试试这段代码:
document.addEventListener('DOMContentLoaded', function() {
document.getElementById('created').addEventListener('input', changeCreatedDate);
}, false);
function changeCreatedDate(event) {
if(this.value === ""){
this.value = document.getElementById('publish_up').value;
}
}

<input type="text" name="publish_up" id="publish_up" value="2017-03-21"> <br/><br/>
<p>Simply try to empty the value of the following input and it should get the value of the first one</p>
<input type="text" name="created" id="created" value="erase me ...">
&#13;
答案 1 :(得分:0)
如果你想使用jQuery,它会工作......!
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="first" type="text" name="" value="Some text here">
<input id="second" type="text" name="" value="">
&#13;
ImageFactory
&#13;