การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์ javascript
Moderator: mindphp
-
- PHP Jr. Member
- Posts: 19
- Joined: 09/05/2012 11:25 am
การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์ javascript
คือผมอยากได้ตัวอย่างการส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
สมมุติโหลดหน้าเพจมาตอนแรก textbox มีค่า 'farm' อยู่ แล้วผมเปลี่ยนโดยพิมพ์คำอื่นลงไป
พอกดส่งก็จะส่งข้อมูลใหม่ออกไป ส่วนข้อมูลใน textbox ที่เราไม่ได้ไปเปลี่ยนค่าก็จะไม่ส่งอะไรออกไปอะครับ
สมมุติโหลดหน้าเพจมาตอนแรก textbox มีค่า 'farm' อยู่ แล้วผมเปลี่ยนโดยพิมพ์คำอื่นลงไป
พอกดส่งก็จะส่งข้อมูลใหม่ออกไป ส่วนข้อมูลใน textbox ที่เราไม่ได้ไปเปลี่ยนค่าก็จะไม่ส่งอะไรออกไปอะครับ
-
- PHP Super Member
- Posts: 480
- Joined: 25/01/2010 11:57 pm
- Contact:
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
ต้องถามว่าส่งค่าแบบไหน ระหว่าง ส่งแบบธรรมดา กับแบบใช้ ajax
- ถ้าส่งแบบธรรมดา มันจะไม่สามารถกำหนดที่ต้นทางได้ว่าจะให้ส่งอะไรไปบ้าง แต่ให้ตรวจสอบค่าที่ฝั่งรับแนว่าค่าที่ส่งมาเป็นค่าว่างไหม หรือมีค่าหรือป่าว จากนั้นก็นำอันที่มีค่าไปใช้งาน
- อีกวิธีแบบ Ajax สามารถอ่านค่าโดยใช้ Javascript ตรวจสอบได้เลยว่า textbox ไหนมีค่าบ้าง ก็ให้นำมาต่อกันเป็นแบบ Serialize (name1=val1&name2=val2&...) แล้วส่งผ่าน ajax ได้เลย จะใช้พวก Jquery หรือจะเขียนขึ้นเองก็ได้ แบบนี้ปลายทางก็ไม่ต้องเขียนตรวจสอบ แต่เป็นการตรวจสอบที่ต้นทางแทน
- ถ้าส่งแบบธรรมดา มันจะไม่สามารถกำหนดที่ต้นทางได้ว่าจะให้ส่งอะไรไปบ้าง แต่ให้ตรวจสอบค่าที่ฝั่งรับแนว่าค่าที่ส่งมาเป็นค่าว่างไหม หรือมีค่าหรือป่าว จากนั้นก็นำอันที่มีค่าไปใช้งาน
- อีกวิธีแบบ Ajax สามารถอ่านค่าโดยใช้ Javascript ตรวจสอบได้เลยว่า textbox ไหนมีค่าบ้าง ก็ให้นำมาต่อกันเป็นแบบ Serialize (name1=val1&name2=val2&...) แล้วส่งผ่าน ajax ได้เลย จะใช้พวก Jquery หรือจะเขียนขึ้นเองก็ได้ แบบนี้ปลายทางก็ไม่ต้องเขียนตรวจสอบ แต่เป็นการตรวจสอบที่ต้นทางแทน
-
- PHP Super Member
- Posts: 480
- Joined: 25/01/2010 11:57 pm
- Contact:
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
จากที่ดูจากความต้องการแล้ว น่าจะเป็นการแก้ไขข้อมูลใช้ไหมครับ ถ้าใช่ก็ให้ส่งค่าที่มีอยู่ใน Textbox ไปอัพเดทเลย ซึ่งจะเป็นค่าเก่าหรือใหม่นั้นไม่มีปัญหา เพราะถ้าเป็นค่าใหม่มันก็ update เปลี่ยนเป็นค่าใหม่ แต่ถ้าเป็นค่าเก่า มันก็ยังเป็นค่าเดิมถึงแม้จะอัพเดทใหม่ก็ตาม
-
- PHP Jr. Member
- Posts: 19
- Joined: 09/05/2012 11:25 am
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
ใช้ ajax ครับ คือ ถ้ามีรายละเอียดหลายๆช่อง ผมอยากส่งไปบางส่วนที่เปลี่ยนแปลงอะครับ จะรู้ได้ยังไงว่ามันไม่ใช่ข้อมูลเก่า เพราะข้อมูลที่นำมาแสดงใน textbox ตอนโหลดเพจ ผมอ้างจาก id พอใส่ข้อมูลใหม่ เหมือนมันไปทับของเก่าเลย ตอนนี้ผมเลยไม่รู้ว่าจะแยกยังไง
พอผมอยากจะเทียบ ไม่รู้จะเทียบยังไง
Code: Select all
function ajaxLoad(method,URL,data){
ajax.open(method,URL);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.onreadystatechange = function(){
if(ajax.readyState==4 && ajax.status==200){
var obj = eval ("(" + ajax.responseText + ")"); // eval() can be used to convert a JSON text into a JavaScript object.
//alert(obj.RoomID);
document.getElementById('jRoomID').value=obj.RoomID;
document.getElementById('jTelNo').value=obj.TelNo;
document.getElementById('jPowerNo').value=obj.PowerNo;
Code: Select all
document.write("<tr><td>TelNo </td><td><input name='jTelNo' type='text' id='jTelNo'></td></tr>");
document.write("<tr><td>PowerNo </td><td><input name='jPowerNo' type='text' id='jPowerNo'></td></tr>");
Code: Select all
function fncSubmit(){
var var1 = document.getElementById('jRoomID').value;
alert(var1);
// ผมอยากจะเทียบตรงนี้จะทำยังไงได้บ้างครับ
}
- mindphp
- ผู้ดูแลระบบ MindPHP
- Posts: 26673
- Joined: 22/09/2008 6:18 pm
- Contact:
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
ตอนดึงข้อมูลเก่ามาใส่ใน form เพื่อแก้ไข
เก็บค่าเก่าใส่ใน hidden field ของแต่ละตัวไว้ด้วย ก่อน ส่งก็เช็คค่าใน input filed ที่เปิดให้ user แก้ไข กับ hidden field แต่ละตัว ถ้าไ่ม่เท่ากันก็ให้ ajax ส่งไป
เก็บค่าเก่าใส่ใน hidden field ของแต่ละตัวไว้ด้วย ก่อน ส่งก็เช็คค่าใน input filed ที่เปิดให้ user แก้ไข กับ hidden field แต่ละตัว ถ้าไ่ม่เท่ากันก็ให้ ajax ส่งไป
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- PHP Jr. Member
- Posts: 19
- Joined: 09/05/2012 11:25 am
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
คือเอาดึงค่ามาด้วยอีกชุดนึง แต่ซ่อนไว้ แล้วนำมาเทียบใช่มั้ยครับ
ขอบคุณครับ
ขอบคุณครับ
- dev24x7
- PHP Newbie
- Posts: 6
- Joined: 10/07/2012 12:43 am
- Location: รามคำแหง กรุงเทพ
- Contact:
Re: การส่งเฉพาะค่าที่เปลี่ยนแปลงไปยังเซิร์ฟเวอร์
รบกวนขอ link รายละเอียดที่บอกว่า "AJAX... Serialize (name1=val1&name2=val2&...)" หน่อยครับ สนใจตัวนี้ครับ ขอบคุณล่วงหน้าครับผม
นับถือ, DEV24x7
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Javascript เช็คความยาวตัวเลขที่ป้อนเข้ามา
by mindphp » 09/08/2011 12:13 am » in AJAX Javascript Library - jQuery - 3 Replies
- 6542 Views
-
Last post by pausible
14/03/2012 10:53 am
-
-
-
Q - วิธีการใส่ไฟล์ภาษาลงใน javascript
by Ittichai_chupol » 12/12/2018 5:10 pm » in JavaScript & Jquery Ajax - 1 Replies
- 2649 Views
-
Last post by mindphp
13/12/2018 11:27 am
-
-
- 0 Replies
- 2604 Views
-
Last post by jataz2
23/01/2019 5:45 pm
-
- 1 Replies
- 1957 Views
-
Last post by บัวบุญ จันทะโคตร
17/08/2017 3:05 pm
Who is online
Users browsing this forum: No registered users and 2 guests