<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 閱讀(3348) 評論(8)  編輯  收藏 所屬分類: Ajax

    評論:
    # fsaffsafasfasfsafsafasfsafasfasfasfsafsad 2012-04-19 09:59 | fafa
    fafaf  回復(fù)  更多評論
      
    # re: Ajax 表單驗證 2012-08-26 16:31 | ghgfh
    gfhfgh  回復(fù)  更多評論
      
    # re: Ajax 表單驗證[未登錄] 2012-11-03 14:47 | 糊涂
    # re: Ajax 表單驗證[未登錄] 2012-11-03 14:47 | 糊涂
    # re: Ajax 表單驗證 2013-07-02 11:29 | 電商沙龍
    代碼有點亂啊  回復(fù)  更多評論
      
    # re: Ajax 表單驗證 2014-04-23 12:10 | xun
    代碼好亂  回復(fù)  更多評論
      
    # re: Ajax 表單驗證 2014-08-12 20:52 |
    網(wǎng)  回復(fù)  更多評論
      
    # re: Ajax 表單驗證[未登錄] 2016-08-16 09:59 | 橘子
    真好 怎么做到的  回復(fù)  更多評論
      
    已訪問數(shù):
    free counters
    主站蜘蛛池模板: 麻豆国产精品入口免费观看| 亚洲无码高清在线观看| 亚洲精品人成网线在线播放va| 国产免费爽爽视频免费可以看| 一级日本高清视频免费观看| 亚洲成亚洲乱码一二三四区软件| 精品香蕉在线观看免费| 免费无码一区二区| 91亚洲va在线天线va天堂va国产| 成人最新午夜免费视频| 精品免费tv久久久久久久| 亚洲日韩国产AV无码无码精品| 在线a亚洲v天堂网2019无码| 思思re热免费精品视频66| 一级做性色a爰片久久毛片免费| 亚洲日韩国产精品无码av| 少妇亚洲免费精品| 亚洲高清视频免费| 天堂亚洲免费视频| 亚洲性线免费观看视频成熟| 亚洲日韩激情无码一区| 色www永久免费视频| 精品无码AV无码免费专区| 久久国产乱子伦精品免费午夜| 激情综合亚洲色婷婷五月APP| 国产亚洲综合网曝门系列| 日韩电影免费在线| 成人免费视频网站www| AAAAA级少妇高潮大片免费看| 国产AV无码专区亚洲AV麻豆丫| 亚洲午夜在线电影| 亚洲人成人网站色www| 国产免费拔擦拔擦8x| 国产精品69白浆在线观看免费| 秋霞人成在线观看免费视频| 黄色一级视频免费观看| 亚洲欧洲免费无码| 亚洲国产成人综合| 精品无码一区二区三区亚洲桃色| 在线a亚洲v天堂网2019无码| 全部免费毛片在线|