จริง ๆ ว่าหลังปีใหม่กะจะเขียน blog สักวันละ 1 - 2 ตอนเป็นอย่างน้อย ๆ แต่ว่ามันก็ทำลำบาก เพราะช่วงอาทิตย์นี้ต้องปั่นงานส่งอาจารย์หลายชิ้นด้วยกัน ซึ่งเอาตัว Framework ที่เราทำมาทดสอบ ซึ่งก็เป็นไปได้ดีไอเดียในการทำและลำดับการทำงานเป็นไปตามที่ต้องการเกือบทั้งหมด แต่ก็มีการปรับแต่งบ้างตามความผิดพลาดที่เกิดขึ้น
แต่ปัญหาหลักคือ JavaScript บางตัวกลับไม่สามารถทำงานได้อย่างถูกต้องใน IE 7 ซึ่งผมแปลกใจมากว่าทำไม อย่างเช่นการ return false; ใน confirm Event ของ JavaScript ที่มันไม่ยอม Cancel ให้
จากโค้ดด้านบนนี้ถ้าใน IE7 จะ OK หรือ Cancel มันก็จะเข้าเว็บ Google.com แต่ใน Firefox นี่ทำงานถูกต้อง โดยเจ้า Confirm Event ของ JavaScript มันจะ return Boolean ที่เป็น true กับ false ลองมาปรับเปลี่ยนใหม่อีกนิดให้แน่ใจไปเลยว่า return false; มันใช้งานไม่ได้จริง ๆ
จากด้านบนนี่กดยังไง มันก็ไม่มีทางที่จะ submit ได้แน่ ๆ แต่นี่ใน IE7 มันหน้าด้าน submit ได้อีก -_-' ไว้ฟร่ะ ...... เซง ๆๆๆ ทางแก้ที่โคตรจะกำปั้นทุบดินเลยก็คือตรวจเช็ค Browser แล้วเอา จนได้แบบนี้
-
<script type="text/javascript">
-
if(confirm("Goto Google"))
-
return true;
-
else {
-
if(navigator.appName == "Microsoft Internet Explorer") window.event.returnValue=false;
-
else return false;
-
}
-
}
-
</script>
-
<form method="get" action="http://www.google.com">
-
<input onclick="return validForm();" value="Goto Google" type="submit" />
-
</form>
เฮ้อ ..... ต้องมานั่งเช็คก่อนอีกว่าเป็น IE หรือเปล่าถ้าใช่ก็ใช้ event ของ IE เองในการ return false; ออกไปแทน แล้วถ้้าวันหนึ่ง appName ของ IE มันไ่ม่ใช่ "Microsoft Internet Explorer" ก็ต้องมานั่งแก้ใหม่อีกหรือไงฟร่ะ .......
เฮ้อ ...... เหนื่อยกับอะไรที่มันไร้สาระจริง ๆ ทำอะไรให้มันเหมือนชาวบ้านเค้าหน่อยไม่ได้หรือไง Microsoft !!!




ทำแบบนี้ผมว่ามันไม่ค่อยสวยเท่าไหร่นะครับ
ลองใช้พวก library ตัวอื่นช่วยดีกว่ามั้ย อย่างพวก prototype หรือ dojo
ตอนนี้ผมดู jquery อยู่ ก็ท่าทางใช้ได้ดี
ลอง return 0, null และ “” หรือยังครับ
javascript src ก็ทำให้หน้านั้นไม่แสดงด้วยครับ ว่างเปล่า ไปเลย