2011-01-05 32 views
6

Có thể có nút asp không được hiển thị với thẻ type="submit" hay không. Tôi không muốn nút để gửi biểu mẫu, vì vậy tôi muốn có nó như là type="button" thay thế. Có lẽ một cách tốt hơn để cụm từ câu hỏi của tôi sẽ là: Làm thế nào để ngăn chặn một nút asp gửi?Nút Asp với các loại nút khác nhau

Trả lời

1

Nếu bạn không muốn nút gửi, bạn có cần nút nào không? Sau khi tất cả, nó không làm bất cứ điều gì trước khi nó gửi lại cho máy chủ. Bạn cũng có thể chỉ cần sử dụng một số <input type="button".

đó đang được nói, bạn có thể sử dụng javascript để ngăn chặn một postback:

<asp:Button runat="server" OnClientClick="return false;" /> 
+0

Không sử dụng một nút html vì điều này: http : //stackoverflow.com/questions/4608733/onserverclick-not-working. Có cách nào để ngăn chặn phía máy chủ gửi không? – Radu

+0

"ngừng gửi phía máy chủ" không thực sự có ý nghĩa. Hoặc bạn gửi hoặc bạn không, đó là khách hàng (trình duyệt) mà cuối cùng quyết định điều này. Có lẽ cho thêm một số ngữ cảnh, bạn đang cố gắng làm gì? – driis

+1

Tôi chỉ cần cập nhật một ứng dụng webforms và tôi tình cờ gặp vấn đề này. Câu hỏi là khó hiểu chắc chắn. Tôi không chắc chắn tại sao bất cứ ai muốn sử dụng OnClientClick ... cho mỗi câu trả lời khác Điều này làm việc cho ME, bởi vì tôi có jquery để tương tác với một nút Mà ám OUT như loại =" nút "thay vì type =" submit "hoàn hảo ... –

3

Hai cách:

1) Thêm một tài sản OnClientClick mà trả về false.

<asp:Button runat="Server" ONClientClick="return true"/> 

2) Hoặc sử dụng một điều khiển HTML ví dụ:

<input type="button" id="testButton" value="Regular Button" runat="server"/> 
+0

Trong trường hợp của tôi, UseSubmitBehavior =" false "vẫn làm mới trang. Tùy chọn thứ hai của câu trả lời này đang hoạt động thay thế. –

+0

UseSubmitBehavior là tài sản để chọn _which_ gửi cơ chế (trình duyệt hoặc ASP.NET sử dụng javascript) để sử dụng. ** Các tài sản không vô hiệu hóa gửi trang. ** Để biết thêm thông tin xem [MS tài liệu] (https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.usesubmitbehavior (v = vs.110) .aspx) – Ondrej

1

Bạn cần phải ngăn chặn postback khi nhấn vào một

Check this

29

Bạn chỉ có thể thiết lập UseSubmitBehavior="false" và nó sẽ hiển thị type="button" thay vì type="submit" (.net 4 ít nhất)

+0

Vâng, đây là câu trả lời đúng! –

+0

UseSubmitBehavior là tài sản để chọn _which_ gửi cơ chế (trình duyệt hoặc ASP.NET sử dụng javascript) để sử dụng. ** Các tài sản không vô hiệu hóa gửi trang. ** Để biết thêm thông tin xem [MS tài liệu] (https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.usesubmitbehavior (v = vs.110) .aspx) – Ondrej

8

Sử dụng thuộc tính UseSubmitBehaviour = "false" giải quyết vấn đề của tôi

<asp:Button ID="button1" runat="server" UseSubmitBehavior="false" Text="just a button" /> 

Thuộc tính này có sẵn từ Net v2.0, để biết thêm thông tin: Button.UseSubmitBehavior Property

+0

Đúng là –

+0

UseSubmitBehavior là thuộc tính để chọn cơ chế gửi (trình duyệt hoặc ASP.NET sử dụng javascript) để sử dụng. Thuộc tính không vô hiệu hoá việc gửi trang. – Ondrej

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