我在html頁面中有一個和通過js動態創建的元素。jquery/JS動態控件的簡單數據綁定
<input type="text" id="MyInput" name="MyInput"
class='form-control copyMe' placeholder="enter smth pls"/>
<div id="jsonTextAreaDiv" contenteditable="true">
<span id="MyInput_JSON"></span>
</div>
而我想要從輸入到文本的跨文本綁定。
所以,我去下一個JS:
$(document).on('input', 'input.copyMe', function(){
var valToInsert = $(this).val();
var idToInsert = $(this).attr("id") + "_JSON";
document.getElementById(idToInsert).innerHTML = valToInsert;
});
可能是所有在一行jQuery的,但...反正。 在輸入文本時,此綁定可以正常工作。 但是,一旦輸入失去焦點 - 突然跨越內部文本丟失。 我不知道爲什麼。這正是我的問題,它是如何發生的?
我已經加入
$(document).on('input', 'input.copyMe', function(){
var valToInsert = $(this).val();
var idToInsert = $(this).attr("id") + "_JSON";
document.getElementById(idToInsert).innerHTML=valToInsert;
}).on('blur', '.copyMe', function(){
var valToInsert = $(this).val();
var idToInsert = $(this).attr("id") + "_JSON";
document.getElementById(idToInsert).innerHTML=valToInsert;});
這樣,它就像我希望它「工作圍繞」這個問題。但這很荒謬。 關於爲什麼價值從第一位消失的任何想法?
在此先感謝。
你的代碼似乎對我很好。您是否可以通過工作片段或創建http://jsfiddle.net來複制問題?帶有「更改」事件跨度的 – Ionut