91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ajax動態添加Table

發布時間:2020-07-17 23:25:16 來源:網絡 閱讀:766 作者:七羽燕 欄目:web開發

Ajax是一步的javaScript,是基于javascript實現的功能,會有更好的用戶體驗,比如無業面刷新技術根據查詢的結果集動態的構造網頁元素。

1.原生的Ajax

Ajax技術最核心的Javascript對象是XMLHttpRequest,它提供了對Http請求的能力,并且它可以在無刷新的情況下去請求并接收資源,
目前幾乎所有瀏覽器都支持這個對象。
在請求某個url之前,需要綁定請求處理后觸發的事件:
var xmlhttpRequest=new XMLHttpRequest();
xmlhttpRequest.onreadystatechange=function(){
           if (xmlhttpRequest.readyState==4 && xmlhttpRequest.status==200){
             document.getElementById("content").value=xmlhttpRequest.responseText;
           }
 }
其中readyState=4表示Http響應已經完全接收,status是狀態碼,200表示成功,
當兩個條件都滿足時,就可以接收服務器返回的數據。
當然,沒有使用XMLHttpRequest()去請求是不會觸發這個函數的,請求的代碼是:
xmlhttpRequest.open("GET","<%=path%>/txt/ajaxtest.txt",true);
xmlhttpRequest.send();

括號中:GET表示get的請求方式,后面表示的是一個文本文檔的路徑(在我的ajax的第一篇博文中已經講過了)。

這里是直接請求的文本文檔,假如請求服務器上的某個action,那么action中應該使用response對象
給客戶端寫數據:
Writer writer=response.getWriter();
writer.write("iserror");
writer.flush();
writer.close();

2.動態增加Table

首先需要建立一個web工程,然后導入需要的工具包:fastjson-1.1.23.jar

建立一個servlet取名為:AjaxTable,我們下面會用GET請求,所以在get方法中邪如下代碼:

        response.setContentType("text/html;charset=utf-8");
List<User> userlist=new ArrayList<User>();
for(int i=0;i<10;i++){
    User user=new User();
    user.setUsername("小明");
    user.setPassword(i%2+"");
    userlist.add(user);
}
String json=JSON.toJSONString(userlist);
PrintWriter pw=response.getWriter();
pw.println(json);
pw.flush();
pw.close();

代碼最上面一行為了防止有亂碼。

這一句:String json=JSON.toJSONString(userlist);的JSON對象時我們上面導入的工具包中的內容。

建立一個jsp取名為:AjaxTable.jsp,在使用之前我們需要導入javascript的一個包,包名是:jquery-1.7.1.js

完整代碼如下:

<html>
  <head>
    <title>動態增加Table</title>
  <script type="text/javascript" src="<%=path%>/js/jquery-1.7.1.js"></script>
  <script type="text/javascript">
  function createTable(){
         $.ajax({
            url:"<%=path%>/servlet/JsonTableAjax",
            dataType:"json",
            type:"get",
            success:function(results){
 var tableStr="<table border='1'><tr><td>姓名</td><td>年齡</td></tr>";
              for(var i=0;i<results.length;i++){
                var p=results[i];
tableStr=tableStr+"<tr><td>"+p.username+"</td><td>"+p.password+"</td></tr>";
              }
              tableStr=tableStr+"</table>";
              $("#tableid").html(tableStr);       
            }   
         });    
      }
  </script>
  </head>
                                  
  <body>
    <input type="button" value="創建table"     <div id="tableid"></div>
  </body>
</html>

url表示跳轉的servlet的路徑,在web.xml里面找;dataType是數據類型,servlet使用json去接收的;type是請求方式,用的是get。

$("#tableid").html(tableStr);是使用的javascript的框架Jquery的元素選擇器。

最后在input里加一個onclick事件。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

曲沃县| 偃师市| 华蓥市| 驻马店市| 澄江县| 科技| 阿巴嘎旗| 天台县| 玉屏| 斗六市| 静乐县| 伊吾县| 万州区| 陆河县| 怀远县| 和硕县| 芦溪县| 玉田县| 濉溪县| 四会市| 玉门市| 德兴市| 额敏县| 莱阳市| 大渡口区| 和政县| 齐齐哈尔市| 石狮市| 鹿邑县| 英德市| 汉源县| 宝丰县| 五大连池市| 江西省| 满洲里市| 滦平县| 山丹县| 登封市| 陈巴尔虎旗| 兰溪市| 彭阳县|