สอบถามการใส่ค่า data-initval = จากการค้นหา Auto complete

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามการใส่ค่า data-initval = จากการค้นหา Auto complete

สอบถามการใส่ค่า data-initval = จากการค้นหา Auto complete
https://www.ninenik.com/content.php?arti_id=209
ใช้ค้นหา ชื่อโรงงานจาก DB ได้ แสดงผลในฟอร์มได้ถูกต้อง

แต่งในส่วนของ อำเภอ ตำบล และ รหัสไปรณีย์ ไม่ถูกเลือก
<select id ="amphur_name" name="amphur_name" data-where="3" data-initval="1"  class="ajax_address form-control input-sm">
<option value="">-- เลือกอำเภอ/เขต --</option>
</select>

ขอถามว่าจะเอาค่าจากไหนมาใส่ data-initval="1"
ทดลองใช้ text box รับค่า id ="amphur_name" แสดงค่าที่ส่งมาถูกต้อง

if(id!=""){
                // ส่งค่าไปคิวรี่เพื่อเรียกข้อมูลเพิ่มเติมที่ต้องการ โดยใช้ ajax
                $.post("app/memjob/g_fulldata.php",{id:id},function(data){
                    if(data!=null && data.length>0){ // ถ้ามีข้อมูล
                            // นำข้อมูลไปแสดงใน textbox ที่่เตรียมไว้
                            $("#facCode").val(data[0].facCode);
                            $("#address").val(data[0].address);
                            $("#business").val(data[0].business);
                            $("#amphur_name").val(data[0].amphur);
                            $("#district_name").val(data[0].district);
                            $("#zipcode_name").val(data[0].zipcode);
                            $("#phone").val(data[0].phone);
                            $("#faX").val(data[0].fax);
                            $("#effluent").val(data[0].effluent);
                            $("#treatment").val(data[0].treatment);
                    }
                });
            }else{
                // ล้างค่ากรณีไม่มีการส่งค่า id ไปหรือไม่มีการเลือกจาก autocomplete
                $("#facCode").val("");
                $("#address").val("");
                $("#business").val("");
                $("#amphur_name").val(""); 
                $("#district_name").val(""); 
                $("#zipcode_name").val(""); 
                $("#phone").val(""); 
                $("#faX").val(""); 
                $("#effluent").val(""); 
                $("#treatment").val("");            
            }
        }


Takabe 17-06-2019 15:27:34

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
สังสัยว่า ค่าที่มา   $("#amphur_name").val(data[0].amphur); จะเขียนให้แสดงในรูปตัวแปรอย่างไรครับ


takabe 17-06-2019 15:29
 ความคิดเห็นที่ 2
ไม่แน่ใจว่าเป็นการประยุกต์รวมกันของ 2 บทควาามด้านล่างหรือเปล่า
เพราะน่าจะต้องดูที่ภาพรวม และกำหนดการทำงานใหม่


บทความแนะนำที่เกี่ยวข้อง
สร้างฟังก์ชัน autocomplete ให้ใช้งานแบบง่าย ด้วย ajaxอ่าน 82,968
ประยุกต์การเลือก listbox มากกว่า 2 รายการ ที่สัมพันธ์กัน รองรับการแก้ไขอ่าน 10,741
ninenik 17-06-2019
 ความคิดเห็นที่ 3
ใช่ครับ ผมประยุกต์จาก 2 บทความครับ
1. ค้นหาจากบทความ Auto complete
2. เลือก จังหวัด อำเภอ ตำบล จากบทความนี้
https://www.ninenik.com/ใช้_ajax_ประยุกต์ดึงข้อมูล_จังหวัด_อำเภอ_ตำบล_รหัสไปรษณีย์ในประเทศไทย-684.html

ขอคำแนะนำหน่อยครับ ถ้าเป็นการแก้ไขไม่มีปัญหา ดึง ข้อมาใส่ใน data-initval="" ได้
แต่ถ้าจะ Add โดยให้ค้นหาขอมูลเก่าจาก DB ถ้าเลือก ก็ให้แสดงรายละเอียดที่อยู่
จังหวัด อำเภอ ตำบล รหัสไปรษณีย์ ครับ


takabe 17-06-2019 21:15
 ความคิดเห็นที่ 4
เอาค่า id ที่สัมพันธ์กันจากการดึงจากฐานข้อมูล กำหนดเข้าไปใน data-initval
แล้วรันฟ่ังก์ชั่น  ด่านล่างซ้ำ
 
      // ลิสรายการแรกใช้ ajax ดึงรายการจังหวัดทั้งหมด 
      var dataSend={
          type_option:1
      };
     var targetObj="select#province_id";  
     loadOption("get_option.php",targetObj,dataSend);    
 
 
แนวทาง เช่น
 
 
if(id!=""){
                // ส่งค่าไปคิวรี่เพื่อเรียกข้อมูลเพิ่มเติมที่ต้องการ โดยใช้ ajax
                $.post("app/memjob/g_fulldata.php",{id:id},function(data){
                    if(data!=null && data.length>0){ // ถ้ามีข้อมูล
					
							$("#amphur_name").data("initval",data[0].amphur);
							
							// ลิสรายการแรกใช้ ajax ดึงรายการจังหวัดทั้งหมด 
							  var dataSend={
								  type_option:1
							  };
							 var targetObj="select#province_id";  
							 loadOption("get_option.php",targetObj,dataSend);    
	 
	 					
                            // นำข้อมูลไปแสดงใน textbox ที่่เตรียมไว้
                            $("#facCode").val(data[0].facCode);
                            $("#address").val(data[0].address);
                            $("#business").val(data[0].business);
                            $("#amphur_name").val(data[0].amphur);
                            $("#district_name").val(data[0].district);
 
 
ต้องประยุกต์ ปรับให้ถูกต้องเพิ่มเติมเอา 
 


ninenik 17-06-2019
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ