javascript ไม่ทำงานครับเป็นปกติ ถ้าสร้างฟอร์มจาก html ก็ได้ปกติ แต่กรณีนี้สร้างจาก javascript ไม่รู้ว่าเกี่ยวกันไหม
Code (JavaScript)
function calA(i){
alert("zzz");
}
ลองแบบนี้ได้ไหม๊ครับ
Date :
2013-08-16 09:18:56
By :
mr.win
Code (JavaScript)
for(var i=0;i<hdnMaxLine.value;i++){
document.getElementById('txtlistunit'+i).onkeyup = calA(i);
document.getElementById('txtlistprice'+i).onkeyup = calA(i);
}
สาเหตุน่าจะเกิดจากตรงจุดนี้ครับซึ่งผมก็ไม่รู้เหมือนกันว่ามันขัดกันตรงไหนถ้ากำหนด
Code (JavaScript)
for(var i=0;i<2;i++){
alert("111");
document.getElementById('txtlistunit'+i).onkeyup = calA(i);
document.getElementById('txtlistprice'+i).onkeyup = calA(i);
alert("222");
}
จะผลลัพธ์ที่ผิดคือ alert("111") แค่ครั้งเดียวซึ่งผิด
แต่ถ้าเขียนโค๊ดอีกแบบคือ
Code (JavaScript)
for(var i=0;i<2;i++){
alert("111");
document.getElementById('txtlistunit1').onkeyup = calA(i);
//document.getElementById('txtlistprice'+i).onkeyup = calA(i);
alert("222");
}
กำหนดชื่อโดยไม่ใช้การเชื่อมสตริง จะสามารถใช้งานได้ ถ้าใช้วิธีการเชื่อมสตริงจะไม่ได้ โดยถ้าผลลัพธ์ที่ได้จะออกมาดังนี้คือ
alert("111") และ alert("222") อย่างละสองรอบ(เพราะเงื่อนไข for)
Date :
2013-08-16 20:05:52
By :
nook563
เปลี่ยนเงื่อนไข for ใหม่เป็น
Code (JavaScript)
for(var i=1;i<=hdnMaxLine.value;i++){
process
}
Date :
2013-08-19 15:17:27
By :
nuke
Load balance : Server 04