//在新增按鈕上綁定函數 document.getElementById("add").attachEvent("onclick",addFunction); var jc_count = 0;//定義需要改變第幾行的值 function txzmcFunction(x,y){//下拉框中綁定的函數 var sql="select txzjc from dm_txzmc where dm='"+x.value+"'";//取得下拉框中的代碼,通過ajax獲得相應的中文名稱 jc_count = y;//定義當前行是第幾行 ajaxSelect(sql,"txzjcFunction");//封裝的ajax函數 } function txzjcFunction(x){//接收封裝的ajax函數返回值,并賦值 document.getElementById("_subarea_hxax_clzjxxb_hxax_txzxxb_update_txzjc_"+jc_count).value=x; } function bb(dx,sz){//解決動態綁定閉包問題要用到函數 this.clickFunc=function(){ txzmcFunction(dx,sz);//調用相應的函數 } } function addFunction(){ //動態循環綁定 var count=document.getElementById("_subarea_hxax_clzjxxb_hxax_txzxxb_update_maxcount").value;//獲取最大的行數 for (var i=0;i<count ;i++ )//循環綁定 { var obj=document.getElementById("_subarea_hxax_clzjxxb_hxax_txzxxb_update_txzmc_" +i); var tp = new bb(obj,i);//解決閉包問題,new一個新的函數類 obj.onchange = tp.clickFunc; } } //顯示頁面時執行一次 addFunction();