2011-11-05 28 views
17

Tôi có mẫu đơn này:Làm thế nào để thêm tham số bổ sung trên một hình thức, trình nó với phương thức GET

<form method='GET' name='search' action='index.php?explore=search'> 
    <input type="hidden" name="searchType" value="all" /> 
    <input class="inputSearchSmall" name="search"> 
</form> 
<a href="javascript:document.search.submit()"><img src="img/button_search.png" class="buttonSearch" /></a> 

và tôi muốn thêm các thông số trên chuỗi truy vấn, sau khi liên kết hành động. Vì vậy, kết quả phải:

http://localhost:8080/website/index.php?explore=search&searchType=all&search=example 

không:

http://localhost:8080/website/index.php?searchType=all&search=example 

cách tốt nhất để làm điều này là những gì? Thêm thông số ẩn như:

<input type="hidden" name="explore" value="search" /> 

Hoặc tôi có thể nối các thông số vào tập lệnh hành động theo một cách nào đó không?

Trả lời

17

Thêm chúng qua thông số ẩn như bạn đã đề xuất là cách tốt nhất để thực hiện. Nó dễ bảo trì hơn là thêm vào giá trị thuộc tính action của biểu mẫu và sẽ thực hiện chính xác những gì bạn yêu cầu. Chỉ cần chắc chắn rằng bạn đặt nó trong các thẻ biểu mẫu.

2

Cả hai cách sẽ hoạt động - các yếu tố đầu vào bị ẩn hoặc thêm thông số vào thuộc tính action của phần tử form.

Thực sự không phải là cách "ưa thích" - làm những gì có ý nghĩa nhất đối với bạn, mặc dù nếu bạn muốn thêm, xóa và thay đổi tham số bằng cách sử dụng các yếu tố đầu vào ẩn sẽ dễ dàng hơn để làm việc.

+1

hi, làm thế nào chúng ta có thể thêm tham số thông qua thuộc tính hành động? – GMsoF

+1

@GMsoF - Trên URL 'action =" somepage.someext? Param1 = a & param2 = b "'. – Oded

+0

xin cảm ơn câu trả lời nhanh của bạn. Điều gì nếu tham số phụ thuộc vào đầu vào khác? Tôi không thể sử dụng 'ẩn' vì tôi muốn bật hoặc tắt tham số mới. – GMsoF

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