js生成元素的事件不执行问题
生活随笔
收集整理的這篇文章主要介紹了
js生成元素的事件不执行问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
要求:雙擊span標(biāo)簽,可以修改。
<div class="commands_ticketmiddl_ine_new" >
<span>NO:</span><span name="oddNo" id="customerNo">${worKticket.customerNo}</span>
</div>
// alert(11111);
var td = $(this);
var txt = $.trim(td.text());
var input = $("<input name='customerNo' οnblur='test()' id='testID' type='text'value='" + txt + "'/>");
td.html(input);
}
進(jìn)一步要求,當(dāng)鼠標(biāo)輸入框離開時(shí)候,彈出所填寫的內(nèi)容,在上邊動態(tài)生成的時(shí)候?qū)懮蟧nblur方法。
如果,$(function(){
如果在這個(gè)里邊,獲取 $("#testID").val();有問題,這里邊涉及元素加載的問題。當(dāng)雙擊的時(shí)候才生成此元素,但是,加載頁面的時(shí)候,需要這個(gè)元素。所以報(bào)錯(cuò)。 }); function test(){
alert(123);
alert($("#testID").val());
}
<div class="commands_ticketmiddl_ine_new" >
<span>NO:</span><span name="oddNo" id="customerNo">${worKticket.customerNo}</span>
</div>
方案:添加onclick事件,動態(tài)增加input。
document.getElementById("customerNo").ondblclick = function(){// alert(11111);
var td = $(this);
var txt = $.trim(td.text());
var input = $("<input name='customerNo' οnblur='test()' id='testID' type='text'value='" + txt + "'/>");
td.html(input);
}
進(jìn)一步要求,當(dāng)鼠標(biāo)輸入框離開時(shí)候,彈出所填寫的內(nèi)容,在上邊動態(tài)生成的時(shí)候?qū)懮蟧nblur方法。
如果,$(function(){
如果在這個(gè)里邊,獲取 $("#testID").val();有問題,這里邊涉及元素加載的問題。當(dāng)雙擊的時(shí)候才生成此元素,但是,加載頁面的時(shí)候,需要這個(gè)元素。所以報(bào)錯(cuò)。 }); function test(){
alert(123);
alert($("#testID").val());
}
轉(zhuǎn)載于:https://www.cnblogs.com/wlhebut/p/8257812.html
總結(jié)
以上是生活随笔為你收集整理的js生成元素的事件不执行问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【论文笔记】CNN for NLP
- 下一篇: 从FCN到DeepLab