2013-02-20 34 views
6

Xin chào tất cả mọi người Tôi cần trợ giúp về phương pháp tải ajax. Về cơ bản, tôi cần sử dụng tải Ajax() để hiển thị một jsp trong trang chính khi người dùng kiểm tra nút radio. Ive đính kèm hình ảnh của trang nơi jsp cần được hiển thị và cũng là mã jsp của tôi .. Xin hãy giúp! web pageTải trang jsp bằng phương thức tải AJAX

<div id="verification"> 
    <p align=center class="4f1_title" ><u>Verification Decision</u></p> 
    <table border="0" cellpadding="0" cellspacing="0" align=center 
width="100%"> 
<tbody> 

    <tr> 
     <td width="10%"></td> 
     <td width="8%">Passed <input id="passed" type="radio" 
      value="P" onclick="()"></td> 
     <td colspan="2" width="8%">Pending <input id="pending" 
      type="radio" value="H" onclick="()"></td> 
     <td width="9%">True Hit <input id="failed" type="radio" 
      value="F" onclick="()" disabled></td> 
     <td width="13%">Parcel Returned <input id="returned" 
      type="radio" value="S" onclick="()"></td> 
     <td width="23%">Referred to Law Enforcement <input id="law" 
      type="radio" value="L" onclick="()"></td> 
     <td width="8%">Retired <input id="retired" type="radio" 
      value="R" onclick="()" disabled></td> 
       <td width="12%">Return Reason <input id="ac" 
       type="radio" value="C" onclick="()"></td> 
     <td width="10%"></td> 
    </tr> 
     </tbody> 
      </table> 
     </div> 
      <br> 

        <div align=center> 
       <a href="javascript:handleClick()"><u> 
       <div id='showhidecomment'>Show Comments</div></u></a> 
       <div id='chkcomments'> 
       </div> 
    </div> 
    <br> 
+0

Tất cả những gì 'onclick = "()" '? Và bạn đã thử cái gì? Bạn đã xem xét phương thức ['.load()' (http://api.jquery.com/load/) của jQuery chưa? –

+0

Xin lỗi vì sự nhầm lẫn .. Tôi đã cố gắng sử dụng một trình xử lý để làm điều này trước nhưng tôi không thể đi mà rout nữa tôi sẽ loại bỏ nó .. cho đến nay Ive đã thử này nhưng nó không hoạt động .. $ (tài liệu) .ready (function() { $ ('# verification'). Tìm thấy ('# passed') { $ ("radio"). Nhấp vào (function() { $ ("# showhidecomment"). Load ("sample.jsp"); { } }); – Fahad

Trả lời

6

Hãy thử

$(function() { // when DOM is ready 
    $("#showhidecomment").click(function(){ // when #showhidecomment is clicked 
     $("#chkcomments").load("sample.jsp"); // load the sample.jsp page in the #chkcomments element 
    }); 
}); 

Và thay đổi html của bạn (vào liên kết phần) để

<div> 
    <div id='showhidecomment'>Show Comments</div> 
    <div id='chkcomments'></div> 
</div> 

Vì các yếu tố div không hợp lệ bên trong a yếu tố.


cập nhậtbình luận

tôi sẽ thêm một tùy chỉnh data-url thuộc tính cho những yếu tố (để xác định trang để tải)

<input id="passed" type="radio" value="P" data-url="some-page.jsp" /> 
<input id="law" type="radio" value="L" data-url="some-other-page.jsp" /> 
<input id="ac" type="radio" value="C" data-url="some-third-page.jsp" /> 

và sau đó áp dụng một đơn xử lý cho họ

$('#verification').on('change','input[type="radio"][data-url]', function(){ 
    if (this.checked){ 
     var url = $(this).data('url'); 
     $("#chkcomments").load(url); 
    } 
}); 
+0

Cảm ơn @Gaby aka G.Petrioli, Tuy nhiên, chức năng này nên được gọi khi người dùng chọn nút radio không phải là liên kết 'showhidecomment'. Làm cách nào để mã hộp kiểm của tôi hoạt động theo cách đó? – Fahad

+0

@ Fahad, nút radio nào? (* Bạn có nhiều người trong số đó *) –

+0

aka G.Petrioli, được thông qua, thực thi pháp luật và lý do trả lại. Tất cả ba trang tải khác nhau – Fahad

2

Nếu bạn chỉ muốn ajax tải một trang web mà bạn có thể sử dụng tải jquery: http://api.jquery.com/load/

Ngoài ra còn có get jquery: http://api.jquery.com/jQuery.get/

Bạn có thể tìm thấy một ví dụ đơn giản trong tài liệu.

Cập nhật:

Bạn có thể cần thêm một tham chiếu đến thư viện jquery nếu bạn chưa có. Vui lòng tham khảo mã mẫu bên dưới.

Trang đơn giản hiển thị 'hello world': http://jsbin.com/ivinuw/1/

Trang bằng nút. Khi bạn bấm nút nó sử dụng tải jquery để tải ajax trang trên vào một container div: http://jsbin.com/ubitat/1/edit

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