<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-167  評論-65  文章-0  trackbacks-0

    最近做了一個項目中的登錄注冊模塊,大部分功能從一個網(wǎng)站里扣出來的,部分功能自己修改,自認為還是有點人性化的

    兼容: opera 9.6 + chrome 2.0 + FF 3 + IE 6

    效果:一邊輸入一邊實現(xiàn)驗證

    image

    環(huán)境:ruby 1.8.6 + rails 2.1.0 + windows

    核心代碼:

    html:

    瀏覽器禁用javascript時顯示提示信息:

          <noscript>
            <div  style="color:red">您的瀏覽器不支持javascript,部分功能無法使用</div>
          </noscript>

    當瀏覽器禁用JS后,提交按鈕不可用,實現(xiàn)客戶端驗證!

    <div id="js_support" style="display:none">
          <p id="pSubmit"><input type="submit" name="registerform" value="注  冊"  onclick="return submitform();"/></p>
          </div>
          
          <script type="text/javascript">
      $("js_support").style.display = "block";
    </script>
          

    通過javascript的onfocus和onkeyup實現(xiàn)監(jiān)聽表單域:

    <input  type="text"  class="textbox" onfocus="checkLogin(this);" onkeyup="checkLogin(this);" style="width:120px;" />

    ajax的自動驗證:其中用到一個bp.js,是已經(jīng)封裝好的xmlhttprequest對象的,可以到我下面的項目中下載到

    function checkLogin(node) {
        clearError();
        if (bp.String.trim(node.value)!="") {
          var url = "/test/response_validate";
          var params = [];
          params["command"] = "logincheck";
          params["login"] = encodeURI(bp.String.trim(node.value));
          var v = validatePath("login",params["login"]);
          if (v==""){
            bp.Io.XhrGet({
              url: url,
              mimeType: "text/json",
              params: params,
              load: function(type, data, e) {
                if (data==true){
                  loginError = document.getElementById("valstatus").innerHTML = '登錄名已存在';
                  document.getElementById("loginValidate").className = "icon_cross";
                  node.className = "input_error";
                  loginValid = false;
                } else {
                  loginError = "";
                  document.getElementById("loginValidate").className = "icon_ok";
                  node.className = "textbox";
                  loginValid = true;
                }
              },
              error: function(type, data, e) {}
            });
          } else {
            loginError = document.getElementById("valstatus").innerHTML = v;
            document.getElementById("loginValidate").className = "icon_cross";
            node.className = "input_error";
            loginValid = false
          }
        } else {
          loginError = validatePath("login", "");
          document.getElementById("loginValidate").className = "";
          node.className = "textbox";
        }
      }

    后臺:

    這個是rails的后臺,通過render :partial返回數(shù)據(jù)給客戶端,當然可以是任何平臺下的,例如java平臺下的可以用servlet的out.println(...)返回

      def response_validate
           if params[:login]
          name = params[:login]
          puts name
          if name == "aaaaaa"
          @value = true
          render :partial => 'show_info'
          else
            @value = false
            render :partial => 'show_info'
          end  
        end
      end

    完整源碼下載:

    http://www.namipan.com/d/0c7456748d0877cb1cb939583f14eadce76dfb2118920100



    write by feng
    posted on 2009-05-11 17:24 fl1429 閱讀(3360) 評論(8)  編輯  收藏 所屬分類: Ajax

    評論:
    # fsaffsafasfasfsafsafasfsafasfasfasfsafsad 2012-04-19 09:59 | fafa
    fafaf  回復  更多評論
      
    # re: Ajax 表單驗證 2012-08-26 16:31 | ghgfh
    gfhfgh  回復  更多評論
      
    # re: Ajax 表單驗證[未登錄] 2012-11-03 14:47 | 糊涂
    222  回復  更多評論
      
    # re: Ajax 表單驗證[未登錄] 2012-11-03 14:47 | 糊涂
    的  回復  更多評論
      
    # re: Ajax 表單驗證 2013-07-02 11:29 | 電商沙龍
    代碼有點亂啊  回復  更多評論
      
    # re: Ajax 表單驗證 2014-04-23 12:10 | xun
    代碼好亂  回復  更多評論
      
    # re: Ajax 表單驗證 2014-08-12 20:52 |
    網(wǎng)  回復  更多評論
      
    # re: Ajax 表單驗證[未登錄] 2016-08-16 09:59 | 橘子
    真好 怎么做到的  回復  更多評論
      
    已訪問數(shù):
    free counters
    主站蜘蛛池模板: 国产亚洲精品自在久久| jizz日本免费| 在线电影你懂的亚洲| 亚洲AV无码一区二三区| 三年片在线观看免费观看高清电影 | 成年人免费网站在线观看| 国色精品va在线观看免费视频| 国产精品亚洲专区无码WEB| 亚洲成人网在线观看| 久久精品国产亚洲AV麻豆不卡| 亚洲日韩国产成网在线观看| 免费观看的av毛片的网站| 中文字幕无码免费久久99| 污污网站18禁在线永久免费观看| 香蕉免费一级视频在线观看| 小说区亚洲自拍另类| 亚洲精品无码永久在线观看男男| 久久亚洲AV成人无码国产| 亚洲Av永久无码精品三区在线| 相泽亚洲一区中文字幕| 亚洲AV无码专区日韩| 一本久到久久亚洲综合| 国产午夜免费福利红片| 天天干在线免费视频| 性感美女视频免费网站午夜| 三年片在线观看免费大全| 免免费国产AAAAA片| 美女被免费喷白浆视频| 久热中文字幕在线精品免费| 真实国产乱子伦精品免费| 久别的草原电视剧免费观看| 久久香蕉国产线看免费| 无码av免费一区二区三区试看| 中文字幕日本人妻久久久免费| 花蝴蝶免费视频在线观看高清版 | 国产AV无码专区亚洲AWWW| 久久久久亚洲av毛片大| 亚洲乱亚洲乱妇无码麻豆| 亚洲男同帅GAY片在线观看| 亚洲Av综合色区无码专区桃色| 久久91亚洲人成电影网站|