2009-04-09 34 views
8

Tôi có một vài nút gửi khác nhau trên JSP của tôi trong một thẻ biểu mẫu mà tất cả trỏ đến cùng một servlet. Tôi cần biết nút gửi nào đã được nhấp. Làm thế nào tôi có thể tìm ra nút nào được bấm?Làm cách nào để biết nút gửi nào đã được nhấp vào

+1

là họ

+0

bạn có quan tâm đến điều này trong bộ điều khiển trong javascript không? – mkoryak

+1

cũng IE6 gửi một giá trị cho tất cả các thẻ

Trả lời

12

nếu request.getParameter ("button-name") không phải là null thì đây là nút được nhấn

4

Mỗi nút Submit nên có một khác nhau name:

<input type="submit" value="This is a submit button" name="submit1"> 
<input type="submit" value="Another submit button" name="submit2"> 
<input type="submit" value="Yet another submit button!" name="submit3"> 

Sau đó, tên của các đầu vào sẽ xuất hiện trong các thông số gửi đến bất cứ nơi nào form được gửi bài đến, một cái gì đó giống như

post.jsp?key=value&submit3=&.... 

http://www.w3schools.com/tags/tag_input.asp

+1

Không, nó không xuất hiện trong chuỗi truy vấn. – crauscher

1

Đây là loại tương tự như DispatchAction trong Struts. Những gì họ làm là để có một lĩnh vực ẩn, và khi bạn gửi mẫu, có onClick() thiết lập giá trị để xác định hành động được thực hiện.

<input type="hidden" name="dispatchAction"/> 
<input type="submit" value="Edit" onClick="setDispatchAction('edit')"> 
<input type="submit" value="Delete" onClick="setDispatchAction('delete')"> 
0
<button type="submit" name="somename" value="button1">some text</button> 
<button type="submit" name="somename" value="button2">some other text</button> 

bạn sẽ có bài biến "somename" thiết lập với giá trị theo, bất kể giá trị dispalyed.

+1

Cảnh báo: MSIE gửi phần thân của nút "một số văn bản" hoặc "một số văn bản khác" làm giá trị tham số, chứ không phải thuộc tính 'value'! Bạn không nên cung cấp cho tất cả các nút có cùng tên, nhưng có một tên khác và chỉ đánh dấu sự hiện diện của tên nút. I E. nếu nó không phải là null, sau đó nó được ép, nếu nó là null, thì nó không được nhấn. – BalusC

Các vấn đề liên quan