ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

บทที่ 6 jQuery DOM ตอนที่ 1
   DOM manipulation Method
   สิ่งหนึ่งที่สำคัญมากในการเรียนรู้ภาษา {--mlinkarticle=3863--}jQuery{--mlinkarticle--} นั้นคือการเข้าใจ DOM เพื่อให้สามารถจัดการกับ element และ attributes ได้ดียิ่งขึ้น
   เพราะคงไม่มีใครชอบ หากต้องมานั่งเขียนโค๊ดยาวๆ เมื่อต้องการปรับแก้ไขค่า (value) ให้กับ element ต่างบนหน้าเอกสาร {--mlinkarticle=2026--}html{--mlinkarticle--}  
DOM = Document Object Model
   DOM คือ การมองส่วนต่างๆของหน้าเว็บให้เป็น object ทำให้เราสามารถแยกแยะ และเข้าถึงแต่ล่ะ object ได้ง่ายขึ้น ทั้งนี้ก็เพื่อให้เราสามารถเรียกใช้ object เหล่านั้นได้

   Method ที่ใช้ในการจัดการ DOM มีดังนี้
1. Get content
  1.1 $(selector).text(content) :  คือคำสังที่ใช้กำหนดข้อความให้กับอิลิเม้นท์ใดๆ หรือดึงข้อความ ออกจากอีลิเม้นท์ใดๆ
  1.2 $(selector).html(content) : คำสั่งนี้จะคล้ายๆกับคำสั่ง text()  เพียงแต่ ข้อความที่ได้จากคำสั่ง html() นั้นจะเป็นแบบ html tag   ต่างกับคำสั่ง text() ที่ได้ข้อความเป็นแบบ text
  1.3 $(selector).val(content) :คำสั่งที่ใช้สำหรับปรับค่าของ form โดยสามารถใช้ได้ทั้ง ดึงค่า เช่น ดึงค่า value ออกมาจากคอนโทรลในฟอร์ม จำพวก textbox , checkbox , listbox เป็นต้น

ตัวอย่างที่ 1 คำสั่ง text() VS html()

<!DOCTYPE html>
<html>
<head>
<meta charset="utf8">
<script src="/jquery-1.9.1.js">
</script>
<script>
$(document).ready(function(){
  $("#btn1").click(function(){
    alert("Text: " + $("#test").text());
  });
  $("#btn2").click(function(){
    alert("HTML: " + $("#test").html());
  });
});
</script>
</head>

<body>
<p id="test">
ตัวอย่างการใช้ <strong><u>คำสั่ง text และ คำสั่ง html</u></strong> 
</p>
<button id="btn1">Show Text</button>
<button id="btn2">Show HTML</button>
</body>
</html>


   คลิกดูตัวอย่าง text() VS html()
   จะเห็นว่า คำสั่งทั้งสองให้ผลลับที่ต่างกัน คือคำสั่ง text() จะได้ข้อความแบบธรรมดา ต่างกับ คำสั่ง html() ที่ให้ข้อความแบบ html tag

ตัวอย่างที่ 2.1 การใช้คำสั่ง val() เพื่อดึงค่า value ออกมาจากคอนโทรลในฟอร์ม จำพวก textbox , checkbox , listbox

<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    alert("Value: " + $("#test").val());
  });
});
</script>
</head>

<body>
<h>ลองพิมพ์ข้อความลงในช่อง "NAME" แล้ว คลิกที่ปุ่ม "Show Value" เพื่อดูค่าที่ได้จากการใช้คำสั่ง Val() กันนะจ๊ะ</h>
<p>Name: <input type="text" id="test" value=""></p>
<button>Show Value</button>
</body>
</html>


คลิกดูตัวอย่างที่ 2.1
    จะเห็นว่า เมื่อเราลองพิมพ์ข้อความในช่อง "Name" แล้วคลิกที่ปุ่ม "show value" เจ้าคำสั่ง val() ก็จะทำการดึงค่า หรือ ข้อความ เฉพาะที่อยู่ในช่อง (form) ออกมา

ตัวอย่างที่ 2.2 การใช้คำสั่ง val() คำสั่งนี้ใช้สำหรับกำหนดค่า value ให้กับคอนโทรลในฟอร์ม<!DOCTYPE html >

<html >
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script >
$(document).ready(function(){
        $('#set').click(function(){ 
        $('#username').val('abc');
        $('#password').val('10');
     });
 })
</script>
</head>

<body>
<p>Username :
  <input type="text"  id="username" >
</p>
<p>Password :
  <input type="text"  id="password">
</p>
  <input type="submit" id="set" value="Click">
</body>
</html>

คลิกดูตัวอย่างที่ 2.2
   จะเห็นว่าพอคลิกที่ปุ่ม "click" โค้ดก็จะกำหนดคำว่า abc ลงไปในช่องป้อนข้อมูลช่องแรก และ 10 ลงไปในช่องที่ 2 ในทันที
แม้ว่าเราจะลองพิมพ์ข้อความอื่นใส่เข้าไปในช่องที่ 1 และ 2 แล้วลองคลิกที่ปุ่มใหม่กี่ครั้ง ค่าที่ได้ในช่องที่ 1 และ 2 ก็จะกลับมาเหมือนเดิมเสมอ


อ้างอิง
http://www.w3schools.com
http://www.jquerythai.com
http://www.select2web.com
 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
MOD_MTB_NEWS_RECENT
ถาม- โน๊ดบุคของผมช้าผิดปกติ เกิดจากอะไร ควรแก้ไขยังไงครับ
โดย nuattawoot ศ 17 พ.ย. 2017 7:08 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
12
ศ 17 พ.ย. 2017 7:08 pm โดย nuattawoot
วันหยุด 2561 วันหยุดราชการ 2561 / 2018
โดย Before Dong ศ 17 พ.ย. 2017 5:19 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
ศ 17 พ.ย. 2017 5:19 pm โดย Before Dong
แจกฟรี!! ปฏิทิน 2018 ประจำปีนักษัตรปีจอ
โดย Before Dong ศ 17 พ.ย. 2017 1:22 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
30
ศ 17 พ.ย. 2017 1:22 pm โดย Before Dong
สภาพหลังจากแก้ bug ของโปรแกรมเมอร์
โดย Before Dong ศ 17 พ.ย. 2017 10:06 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
48
ศ 17 พ.ย. 2017 10:06 am โดย Before Dong
ไฟฟ้าสถิต หรือ พรหมลิขิต
โดย Before Dong พฤ 16 พ.ย. 2017 10:15 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
61
พฤ 16 พ.ย. 2017 10:15 am โดย Before Dong
โปรแกรมไว้ สำหรับเชค ว่าไฟล์ ไหน บน Linux Ubuntu กำลังอ่านเขียนอยู่
โดย mindphp พ 15 พ.ย. 2017 2:56 pm บอร์ด Linux - Web Server
1
24
พ 15 พ.ย. 2017 3:57 pm โดย mindphp
อยากได้ระบบดีๆทุนก็ต้องหนาตามนะครับ
โดย Before Dong พ 15 พ.ย. 2017 10:51 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
125
พ 15 พ.ย. 2017 10:51 am โดย Before Dong
สอบถามเกี่ยวกับการกำหนด Title ในเว็บบอร์ด php BB
โดย AePongsak อ 14 พ.ย. 2017 4:33 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
2
32
อ 14 พ.ย. 2017 4:33 pm โดย AePongsak
สอบถามขอคำแนะนำการใช้เมนูครับ
โดย toonytoony2004 อ 14 พ.ย. 2017 1:29 pm บอร์ด Joomla Development
3
35
อ 14 พ.ย. 2017 1:29 pm โดย toonytoony2004
เมื่อไปนำเสนอโปรแกรมที่บริษัทลูกค้า
โดย Before Dong อ 14 พ.ย. 2017 10:55 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
3
83
อ 14 พ.ย. 2017 10:55 am โดย konseo
เปรียบเทียบการแต่งตัว "ไปเที่ยวกับไปหาลูกค้า"
โดย Before Dong จ 13 พ.ย. 2017 11:14 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
321
จ 13 พ.ย. 2017 11:14 am โดย Before Dong
คำสั่งเช็ค Port บน Linux ว่า port ที่เราอยากรู้ถูกรันมาจากโปรแกรมอะไร ใช้ได้กับ Ubuntu
โดย mindphp อ 12 พ.ย. 2017 7:41 pm บอร์ด Linux - Web Server
1
56
อ 12 พ.ย. 2017 7:41 pm โดย mindphp
เช็ค Version python ใน windows 10 ได้ยังไงค่ะ
โดย thatsawan อ 12 พ.ย. 2017 6:21 pm บอร์ด Programming - C/C++ & java & Python
1
28
อ 12 พ.ย. 2017 6:21 pm โดย mindphp
เมื่อเห็นคนกำลังนั่งกินข้าว
โดย Before Dong ส 11 พ.ย. 2017 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
798
ส 11 พ.ย. 2017 10:52 am โดย konseo
วิธีการใช้ รูปแบบชุดคำสั่งภาษา go
โดย nuattawoot ศ 10 พ.ย. 2017 1:12 pm บอร์ด Programming - C/C++ & java & Python
0
41
ศ 10 พ.ย. 2017 1:12 pm โดย nuattawoot
กว่าจะมาเป็นผลงานสวยๆ
โดย Before Dong ศ 10 พ.ย. 2017 11:07 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
55
ศ 10 พ.ย. 2017 11:07 am โดย konseo
สอบถามเรื่อง Bootstrap Carousel
โดย บุคคลทั่วไป ศ 10 พ.ย. 2017 9:05 am บอร์ด Programming - PHP
1
48
ศ 10 พ.ย. 2017 9:05 am โดย บุคคลทั่วไป
Programmer ลุยกิน ลุยเที่ยว กับรีวิวการเดินทางจากดอนเมืองไปยังพิษณุโลก โดยสายการบินไทยไลอ้อนแอร์
โดย thatsawan พฤ 09 พ.ย. 2017 11:54 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
54
พฤ 09 พ.ย. 2017 11:54 pm โดย konseo
อยากได้สคริป Stock ครับ
โดย บุคคลทั่วไป พฤ 09 พ.ย. 2017 8:28 pm บอร์ด Free PHP Code Download script
1
59
พฤ 09 พ.ย. 2017 8:28 pm โดย บุคคลทั่วไป
ตำแหน่งของอาการปวดหัว
โดย Before Dong พฤ 09 พ.ย. 2017 1:25 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
317
พฤ 09 พ.ย. 2017 1:25 pm โดย Before Dong