jquery ajax 如何向jsp提交表單資料_jquery

來源:互聯網
上載者:User

AJAX越來越火了,作為一個WEB程式開發人員要是不會這個感覺就要落伍,甚至有可能在求職的時候屢被淘汰。我也是一個WEB程式開發人員,當然我也要 “隨波逐流”一把,不然飯碗不保啊!

之前實現AJAX使用Javascript指令碼一個一個敲出來的,很繁瑣。學習Jquery之後就感覺實現AJAX並不是那麼的困難了,當然除了 Jquery架構外還有其它的優秀架構這裡我就著重說下比較流行的Jquery。Jquery AJAX提交表單有兩種方式,一是url參數提交資料,二是form提交(和平常一樣在後台可以擷取到Form表單的值)。在所要提交的表單中,如果元素很多的話建議用第二種方式進行提交,當然你要是想練練“打字水平”的話用第一種方式提交也未嘗不可,相信開發人員都不想費白勁吧!

ajax技術帶給我們的是良好的使用者體驗,同時,使用jquery可以簡化開發,提高工作效率。

下面介紹一下大致的開發步驟。

本文使用的是 jquery-1.3.2.min.js開發工具。

建立兩個頁面:

1、show.jsp:調用ajax,將表單中的資料發送給ajax.jsp頁面。

2、ajax.jsp:擷取show.jsp頁面傳遞的表單資料,並返回結果。

兩個頁面的編碼格式要設定為GBK:

<%@ page contentType="text/html;charset=GBK"%>

show.jsp頁面的重點部分:

1、添加對 jquery-1.3.2.min.js 的引用:

<script type="text/javascript" src="jquery-1.3.2.min.js"></script>

2、設定表單的id,在調用ajax的方法時要用到。

<form id="ajaxFrm" >

3、設定一個div,用於顯示ajax.jsp頁面返回的結果

<div id="ajaxDiv"></div>

4、增加一個按鈕,用來調用ajax

<input type="button" onClick="doFind();" value="調用一下ajax" >

5、增加調用ajax的函數:

function doFind(){$.ajax({cache: false,type: "POST",url:"ajax.jsp", //把表單資料發送到ajax.jspdata:$('#ajaxFrm').serialize(), //要發送的是ajaxFrm表單中的資料async: false,error: function(request) {alert("發送請求失敗!");},success: function(data) {$("#ajaxDiv").html(data); //將返回的結果顯示到ajaxDiv中}});}

ajax.jsp頁面的原始碼:

<%@ page contentType="text/html;charset=GBK"%><%String userName = request.getParameter("UserName");if(userName!=null){userName = new String(userName.getBytes("ISO-8859-1"), "utf-8");//解決亂碼的問題}String returnString = "";returnString="你好," + userName;out.print(returnString);%>

運行效果如下:

jquery ajax提交表單從action傳值到jsp

jsp頁面:

代碼如下:

var clientTel = $("#clientTel").val(); var activityId = $("#activityId").val(); $.ajax({ type : "post",//發送方式 url : "/arweb/reserve/saveCode.action",// 路徑 data : "clientTel="+clientTel+"&activityId="+activityId , success: function(text){$("#randomCode").val(text);}, error: function(text) {alert("對不起,使用者ID不存在,請輸入正確的使用者ID");} }); 

acion類:

代碼如下:

HttpServletResponse res = ServletActionContext.getResponse(); res.reset(); res.setContentType("text/html;charset=utf-8"); PrintWriter pw = res.getWriter(); pw.print(random); pw.flush(); pw.close(); 

pw.print(random);這裡的random就是action要向jsp傳的值,在jsp中,success: function(text)這裡的text就是接收從action傳過來的值。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.