[Java]ปัญหาการส่งข้อมูลไปยัง Action ติดๆกัน

สืบเนื่องจากโปรแกรมเดิมที่พัฒนาด้วย Struts Framework และผ่านมาหลายสิบมือ มีปัญหาการส่งข้อมูล (summit) สองครั้งติดๆกัน ทำให้ข้อมูลซ้ำกันสองรายการ ซึ่งเสียเวลาในการแก้ไขปัญหานี้
ไป 3 ชม. เต็มๆพอแก้ไขได้แล้วก็เลยมา Note ไว้หน่อยเพราะปัญหานี้เป็นปัญหาแบบ เส้นผมบางภูเขาเหล่ากาจริงๆ ปัญหาที่ว่าเกิดจากการใช้งาน ปุ่ม summit ดังนี้

<html:submit property="bt_save" value="Save Data" onclick="doSaveAction();"/>

และ doSaveAction() เขียนประมาณนี้

function doSaveAction(){
	var form = document.getElementById("xx");  
	form.method = "post";
	form.submit();
}

จาก code ดังกล่าวทำให้เกิดการส่งข้อมูลไปให้กับ Action สองครั้งติดๆกัน เนื่องจากใช้ปุ่มเป็น summit อยู่แล้ว แต่ยังใส่ onclick เข้าไปด้วย หลังจากเปลี่ยนเป็น

<html:button property="bt_save" value="Save Data" onclick="doSaveAction();"/>

โปรแกรมก็ทำงานได้ปกติ แก้ปัญหาที่สะสมมานาน

  1. No comments yet.

  1. No trackbacks yet.