เราสามารถเขียน jQuery เพื่อใช้สำหรับ เปิด/ปิด Texbox ผ่านการเลือก Option ใน Listbox ได้ตามตัวอย่างด้านล่างนี้
ตัวอย่างการเขียนโค้ด
เราสามารถเรียกใช้งาน jQuery โดยเพิ่ม code script ลงไปใน Tag <header>....</header> ตามรูปด้านล่าง และเพื่อเพิ่มความสวยงามให้กับ Form เราสามารถเรียกใช้ Bootstarp css ได้อีกด้วย
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script type='text/javascript' src='https://code.jquery.com/jquery-1.12.4.min.js'></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script type='text/javascript' src='https://code.jquery.com/jquery-1.12.4.min.js'></script>
Code ส่วนของ HTML สำหรับสร้าง Listbox และ Textbox
<div class="container1">
<h1 style="padding-left: 15px; font-size: 15px; margin: 25px 0 0 0;">
ตัวอย่าง ซ่อน/แสดง Textbox เมื่อเลือก Listbox jQuery
</h1>
<div class="row" style="float:left; width: 600px; margin: 25px auto;">
<div class='col-sm-3'>
<div class="form-group">
<select id="show_textbox" class="show_textbox form-control">
<option value="yes">เปิด</option>
<option value="no">ปิด</option>
</select>
</div>
</div>
<div class="col-sm-9">
<div class="form-group">
<input type="text" id="input1" class="textbox form-control" placeholder="Textbox ตัวอย่าง">
</div>
</div>
</div>
</div>
<h1 style="padding-left: 15px; font-size: 15px; margin: 25px 0 0 0;">
ตัวอย่าง ซ่อน/แสดง Textbox เมื่อเลือก Listbox jQuery
</h1>
<div class="row" style="float:left; width: 600px; margin: 25px auto;">
<div class='col-sm-3'>
<div class="form-group">
<select id="show_textbox" class="show_textbox form-control">
<option value="yes">เปิด</option>
<option value="no">ปิด</option>
</select>
</div>
</div>
<div class="col-sm-9">
<div class="form-group">
<input type="text" id="input1" class="textbox form-control" placeholder="Textbox ตัวอย่าง">
</div>
</div>
</div>
</div>
Code ส่วน javascript สำหรับเขียน function ควบคุมการ เปิด/ปิด Textbox ผ่านการเลือก Listbox
<script>
$(document).ready(function(){
$('#show_textbox').on('change',function(){
if($(this).val() === 'yes'){
$('#input1').removeAttr('disabled').focus();
}else{
$('#input1').attr('disabled','disabled');
}
});
});
</script>
$(document).ready(function(){
$('#show_textbox').on('change',function(){
if($(this).val() === 'yes'){
$('#input1').removeAttr('disabled').focus();
}else{
$('#input1').attr('disabled','disabled');
}
});
});
</script>
อธิบายเพิ่มเติม
ส่วนสำคัญของ Source code ด้านบน คือส่วนของ javascript จากตัวอย่าง เราใช้ function on('channg') ในการตรวจสอบค่าของ Listbox ถ้าเป็น yes ให้เปิด และถ้าเป็น no ให้ปิด Textbox
ในตัวอย่างเราสามารถเปิดหรือปิด Textbox ได้ที่ละ 1 id แต่ เราสามารถเปิด/ปิด Textbox หรือแม้แต่ DIV ได้เลยละหลาย ๆ ส่วนพร้อมกันเพียงเปลี่ยน
$('#id') เป็น $('.class') แทน เท่านี้เราก็จะสามารถ เปิด/ปิด Object ได้ครั้งละหลาย ๆ ชิ้นพร้อมกัน
ในตัวอย่างเราสามารถเปิดหรือปิด Textbox ได้ที่ละ 1 id แต่ เราสามารถเปิด/ปิด Textbox หรือแม้แต่ DIV ได้เลยละหลาย ๆ ส่วนพร้อมกันเพียงเปลี่ยน
$('#id') เป็น $('.class') แทน เท่านี้เราก็จะสามารถ เปิด/ปิด Object ได้ครั้งละหลาย ๆ ชิ้นพร้อมกัน