|
|
|
สอบถามเรื่อง for ของ javascript ว่าทำไมถึงไม่แสดงผลตามที่ควรจะเป็น |
|
|
|
|
|
|
|
Code (PHP)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Test Checkbox </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="Unidentifier">
<meta name="Keywords" content="">
<meta name="Description" content="">
<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
<style>
body{
font-family:Tahoma;
}
</style>
</head>
<body>
<form id="newspapersForm">
<p>
<input type="checkbox" name="newsletter[]" value="http://www.thairath.co.th" />http://www.thairath.co.th<br />
<input type="checkbox" name="newsletter[]" value="http://www.manager.co.th" />http://www.manager.co.th<br />
<input type="checkbox" name="newsletter[]" value="http://www.bangkokpost.com" />http://www.bangkokpost.com<br />
<input type="checkbox" name="newsletter[]" checked="checked" value="http://www.nationmultimedia.com/" />http://www.nationmultimedia.com<br />
<input type="checkbox" name="newsletter[]" value="http://thainews.prd.go.th/en/" />http://thainews.prd.go.th/en<br />
</p>
<input type="submit" name="submitForm" value="ตกลง" />
</form>
<script>
$("form#newspapersForm").submit(function(event){
event.preventDefault();
var yourSelection='';
$("input[type=checkbox]:checked").each(function(){
yourSelection += ($(this).val()+",");
});
alert(yourSelection);
});
</script>
</body>
</html>
|
|
|
|
|
Date :
2012-09-16 16:00:01 |
By :
sakuraei |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพราะว่า i อยู่ใน scope นอก event handler click ครับ และคำสั่งภายใน click ก็ไม่ได้ทำงานทันที
ค่า i จึงเป็นค่าที่ถูกเปลี่ยนไปเรื่อยๆ และจบที่ i มีค่า 3
ถ้าต้องการให้มีค่าเท่ากับตอนที่วน loop มาพบ ต้องสร้าง function ครอบไว้
และใช้วิธีส่ง parameter เข้ามาแทน เพื่อแยก scope ของตัวแปร i ออกมาอีกตัวนึงครับ
<script>
var jobspic = new Array("#artist2d","#artist3d","#web-designer");
for(i=0;i<jobspic.length;i++)
{
(function(i){
$(jobspic[i]).click(function(){
alert(i);
});
})(i);
}
</script>
|
|
|
|
|
Date :
2012-09-16 21:04:20 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ช่วยหน่อคร๊าบ
ให้ผลลัพธ์
แสดงคะแนนสอบสูงสุด คือ
แสดงคะแนนสอบต่ำสุด
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>LOOP3</title>
</head>
<body>
<script>
// ประกาศตัวแปร
var id,name,lastname,score1,score2,n;
var total,grade;
// ประกาศตัวแปรสำหรับสรุปผล
var maxID,maxName,maxLastname,maxTotal,maxGrade;
var mixID,mixName,mixLastname,mixTotal,mixGrade;
maxTotal=0;
mixTotal=0;
//กำหนดให้ทำวนซ้ำ รับข้อมูล 5 ราย
for(n=1;n<=5;n++){
// รับข้อมูล
id=prompt("รหัส");
name=prompt("ชื่อ");
lastname=prompt("นามสกุล");
score1=prompt("คะแนน 1");
score2=prompt("คะแนน 2");
//แปลงค่าเป็นตัวเลขจำนวนเต็ม
score1=parseInt(score1);
score2=parseInt(score2);
//หาผลรวม
total=score1+score2;
document.write("maxTotal="+maxTotal);
document.write("total="+total);
document.write("mixTotal="+mixTotal);
document.write("total="+total);
//หาเกรดที่ได้
if(total <50){
grade="F";
}else
if(total <60){
grade="C";
}else
if(total <80){
grade="B";
}else {
grade="A";
}
// เปรียบเทียบเพื่อหาคะแนนสูงสุด
if(total>maxTotal){
//คะแนนสูงกว่า
maxTotal = total;
mixTotal = total;
maxID = id;
mixID = id;
maxName = name;
mixName = name;
maxLastname = lastname;
mixLastname = lastname;
maxGrade = grade;
mixGrade = grade;
}else
{
}
// แสดงข้อมูล
document.write("<br> คนที่ :" + n);
document.write("รหัส" + id);
document.write("ชื่อ" + name);
document.write("นามสกุล" + lastname);
document.write("<br>คะแนน1" + score1);
document.write("คะแนน2" + score2);
document.write("รวม:" + total);
document.write("เกรด:" + grade);
}
// แสดงข้อมูลสรุป
document.write("<hr>");
document.write("<br><h2><b><font color=green>สรุปผลการสอบ</font></b><br>");
document.write("<hr>");
document.write("<br>คะแนนสอบสูงสุดคือ");
document.write(maxID+maxName+maxLastname+maxTotal+maxGrade);
document.write("<br>คะแนนสอบต่ำสุดคือ");
document.write(mixID+mixName+mixLastname+mixTotal+mixGrade);
</script>
</body>
</html>
|
|
|
|
|
Date :
2012-10-16 12:10:35 |
By :
plum |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|