2012-04-13 4 views
0

У меня есть список элементов, отображаемых в таблице html, где есть гиперссылка в каждой строке.Как передать listid в сервлет при нажатии гиперссылки в jsp

Когда я нажимаю гиперссылку, я хочу вызвать сервлет с этим конкретным идентификатором элемента.

как я могу это достичь?

для 10 предметов.

<tr> 
     <td> 
     <input type="hidden" name="" value="%=request.getAttribute("item_id")%>" 
     </td> 
     <td align="center"> 
     <font> (String)providerDetail.get("tripTime")<font /> 
     </td> 
     <td align="center"> 
     <font>(String) providerDetail.get("noOfSeats")</font> 
     <td align="center"> 
     <font> <a href="./selectprovider"> Select font </a></font> 
     </td> 
    </tr> 

ENDFOR

Так что, когда я нажимаю на гиперссылку, мне нужно пройти соответствующий item_id в сервлет. Как получить соответствующий элемент ввода для текущего элемента item_id и передать его сервлету?

Я не могу добавить элементы html, так как он не отформатирован правильно.

ответ

0

В предположении, что вы используете ajax, onclick вызывают метод javascript, передайте item_id как параметр этого метода.

Затем отправить это на сервер в качестве данных (я использую JQuery, чтобы сделать это, вы можете использовать любую другую библиотеку)

function sendData(item_id){ 
    jQuery.ajax({ 
     type:"POST", 
     data:"itemId="+item_id, 
     success: function(data){ 
     //Your code for a successful request goes here. 
     }, 
     error: function(data){ 
     //Errors treatment goes here. 
     } 
    }) 
} 

В случае, если вы делаете что-то вроде загрузки документа на основе пункта идентификатор, это хороший пример кода для этого:

var form = '<form action="downloadme"><input type="hidden" name="itemid" value='+item_id+'</form>'; 
jQuery(form).submit(); 

Создать форму и представить его, и в качестве скрытого параметра передать ITEM_ID. По завершении удалите эту форму из тела (как вам больше не нужно).

Надеюсь, это поможет.

Смежные вопросы