Roamswind

          AJAX--這東東就是好

                最近有一個(gè)功能就是在客戶添加或者修改的時(shí)候能夠動(dòng)態(tài)的根據(jù)所填寫的內(nèi)容與數(shù)據(jù)中的數(shù)據(jù)進(jìn)行比較提供預(yù)警信息,但是不影響客戶的增加和修改,只是簡(jiǎn)單的提示一下.
             因?yàn)闃I(yè)務(wù)數(shù)據(jù)涉及的對(duì)象比較的多.等客戶提交后再來比較的話,很難達(dá)到這樣的目的,所以我就選擇了AJAX這個(gè)東西,果然很不錯(cuò),處理起來一切都那么的美妙.
             首先在要處理的地方第一兩個(gè)javascript函數(shù):
                  function getmount()//統(tǒng)計(jì)取值
          {
            var url = "servlet/SelectCountServlet?&A="+document.all("A").value+"&B="+document.all("B").value;
          //A和B都是剛剛填入的值
              if (window.XMLHttpRequest) {
                  req = new XMLHttpRequest();
              } else if (window.ActiveXObject) {
                  req = new ActiveXObject("Microsoft.XMLHTTP");
              }
              req.onreadystatechange = processRequest;
              req.open("GET", url, true);
              req.send(null);
          }

          //將返回的XML格式的數(shù)據(jù)賦給頁面的隱藏變量.
          function processRequest() {
              if (req.readyState == 4) {
                  if (req.status == 200) {
                  var Head = req.responseXML.getElementsByTagName("Head");
           document.all('HeadValue').value=Head[0].firstChild.data;
                var Collect = req.responseXML.getElementsByTagName("Collect");
                document.all('CollectValue').value=Collect[0].firstChild.data;
            
                  } else {
                   document.all('HeadValue').value=-1;
                   document.all('CollectValue').value=-1;
                  }
              }
          }

          接著就可以定義一個(gè)servlet來處理上面的請(qǐng)求:
             主要的方法是用xml格式返回?cái)?shù)據(jù)流
             response.setContentType("text/xml");
            response.setHeader("Cache-Control", "no-cache");
            // String state = request.getParameter("state");
            StringBuffer sb = new StringBuffer("<value>");
                          sb.append("<A>").append(A_value).append("</A>").append("<B>").append(B_value).append("</B>");

            sb.append("</value>");
            PrintWriter out = response.getWriter();
            out.write(sb.toString());
            out.close();
          就這么簡(jiǎn)單.A_value,B_value可以利用javaBean去從數(shù)據(jù)庫中取值.接下來來的一些處理就不用過多介紹了,只是簡(jiǎn)單的在頁面提交的時(shí)候判斷一下,彈出一個(gè)警告對(duì)話框就ok了.
           
            其實(shí)這樣做的好處多多

          posted on 2005-12-19 13:48 流浪的風(fēng) 閱讀(222) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2005年12月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(1)

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 五常市| 寿光市| 大理市| 游戏| 新建县| 含山县| 弥勒县| 松阳县| 桂阳县| 钟祥市| 林芝县| 尚志市| 绥阳县| 万年县| 沅江市| 来凤县| 雅安市| 灵山县| 钦州市| 鱼台县| 巴塘县| 呈贡县| 治县。| 黑山县| 宝清县| 长汀县| 司法| 浏阳市| 综艺| 绍兴县| 弥勒县| 鄂伦春自治旗| 读书| 平顶山市| 怀化市| 佛坪县| 榆树市| 玉环县| 永州市| 彭州市| 简阳市|