ホームページ  >  記事  >  バックエンド開発  >  jquery $("nam") は js によって生成された html の ID を取得できませんか? コードを見てみましょう

jquery $("nam") は js によって生成された html の ID を取得できませんか? コードを見てみましょう

WBOY
WBOYオリジナル
2016-06-13 13:44:301509ブラウズ

jquery $("#nam") は js によって生成された html の ID を取得できませんか? ? 専門家が来てコードを見てみましょう。
私のコードを php ファイルに直接コピーしてテストできます。 つまり、js を使用して HTML テキスト ボックスを生成し、ID 値は nam です。 このIDはjqueryでは取得できませんが、元のページにもテキストボックスを書いており、idの値は同じjqueryで取得できます。 何故ですか? id='nam' で ID を取得するにはどうすればよいですか?

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="../js/jquery-1.6.1.min.js"></script>

<body>
 <div id="d"></div>
<input type="button" id="b"  value="添加出库单" onClick="add()"/>
<input type="text" name="ad"  id="ad" />

</body>
</html>
<script language="javascript">
//添加模块
var ii = 1;
function add(){//执行块添加
dv=document.createElement("div"); 
dv.id="div_"+ii;

tab=document.createElement("div");
tab.innerHTML='<table bgcolor="#E6F3DE" ><tr><td>货物名称:</td><td colspan="2"><input type="text" id="nam" size="15" /></td></tr></table>'
dv.appendChild(tab);

delbtn=document.createElement("input");
delbtn.type="button";
delbtn.value="删除该出库单";
delbtn.onclick=del;

dv.appendChild(delbtn);

document.getElementById("d").appendChild(dv);

ii = ii + 1;
}
//删除添加的块
function del(){

 document.getElementById("d").removeChild(this.parentNode);
 ii=ii-1;

}

//获取 js 添加的框的id,获取不到
$(function(){
    $("#nam").bind("blur",function()
        {        
        alert('msg');
        })
})

//获取原本的input的id  可以获取到!
$(function(){
    $("#ad").bind("blur",function()
        {        
        alert('msg');
        })
})

</script>



-----解決策---------------- - ---
//setTimeout、またはブラー メソッドを使用します
$(function(){
$("#nam").bind("blur",function()
{
alert('msg');
})
})

//元の入力 ID を取得できます。
$(function(){
$("#ad").bind("blur",function()
{
alert('msg');
})
})


------解決策----------------------
setTimeout(function(){//今の内容ボンディング コード}, 10);
それでも動作しない場合は、デバッグするためにどのプログラムを学習する必要があるかに関係なく、印刷する方が簡単です。問題は解決できる。
------解決策---------
バインドがライブに変更されました
を参照してくださいjquery へのマニュアルの具体的な違い
$("#nam").live("blur",function()
{
alert('msg');
})
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。