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

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

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

    duansky'weblog

    統計

    留言簿(3)

    友情鏈接

    閱讀排行榜

    評論排行榜

    基于prototype.js驗證框架(validation.js)的三個應用

    最近對prototype.js用的比較多,同時發現了一個基于prototype.js的驗證框架: [url=http://tetlaw.id.au/view/blog/really-easy-field-validation-with-prototype]validation.js really easy field validation with prototype[/url],下面是我在開發中用到的三個例子.
    前提條件:
    首先要在html頁面中引入幾個js

    Html代碼
    <script?type='text/javascript'?src='../script/prototype.js'></script>??
    <script?type='text/javascript'?src='../script/validation.js'></script>??
    <script?type='text/javascript'?src='../script/effects.js'></script>?
    (可選)
    加幾段css

    Html代碼
    input.disabled?{???
    ????border
    :?1px?solid?#F2F2F2;???
    ????background-color
    :?#F2F2F2;???
    }
    input.required,?textarea.required?{???
    ????border
    :?1px?solid?#00A8E6;???
    }
    input.validation-failed,?textarea.validation-failed?{???
    ????border
    :?1px?solid?#FF3300;???
    ????color?
    :?#FF3300;???
    }
    ???
    input.validation-passed,?textarea.validation-passed?
    {???
    ????border
    :?1px?solid?#00CC00;???
    ????color?
    :?#000;???
    }
    .validation-advice?{???
    ????margin
    :?5px?0;???
    ????padding
    :?5px;???
    ????background-color
    :?#FF3300;???
    ????color?
    :?#FFF;???
    ????font-weight
    :?bold;???
    }
    ?
    應用一:該例子僅使用前臺腳本進行驗證
    需求:
    查詢條件
    當CSO NO、AGREEMENT NO、流水號中任一項有值時,其他項都可為空

    2. 當CSO NO、AGREEMENT NO、流水號三項都為空時,TARIFF CODE為必輸,其他項選輸


    Html代碼
    <td?class?=?"label">CSO?Number</td>??
    <td><input?type="text"?name="csoNumber"?id?=?"csoNumber"></td>??
    <td?class?=?"label">Agreement?Number</td>??
    <td><input?type="text"?name="agreementNumber"?id?=?"agreementNumber"></td>??
    <td?class?=?"label">SequenceNumber?Number</td>??
    <td><input?type="text"?name="sequenceNumber"?id?=?"sequenceNumber"></td>??
    <td?class?=?"label">Tariff?Code</td>??
    <td><input?type="text"?name="tariffCode"?id?=?"tariffCode"></td>??
    <td?colspan?=?"6"?align?=?"center"><button?class?=?"submit"?id?=?"search">Search</button></td>?

    Javascript代碼
    window.onload?=?function(){???
    ????
    //?注冊查詢按鈕事件???
    ????Event.observe("search",?"click",?function(){???
    ????????
    var?validator?=?Validation.get("IsEmpty");???
    ????????
    if?([$F("csoNumber"),?$F("agreementNumber"),?$F("sequenceNumber")].all(validator.test)){???
    ????????????[
    "required"].all(Validation.test.bind($("tariffCode")));???
    ????????}
    ????}
    );??
    應用二: 該例子通過ajax結合后臺來進行驗證
    需求:
    sapid和password必輸
    且必須從后臺數據庫找到sapid和password對應的記錄, 否則登陸不成功,并給出提示信息

    Html代碼
    <form?method=post?action="requisition.html"?id?=?"frmLogin">??
    ????
    <table?align?=?"center"?style?=?"height:100%">??
    ????????
    <tr>??
    ????????????
    <td>??
    ????????????????
    <fieldset?style?=?"padding:10px">??
    ????????????????
    <legend>Login</legend>??
    ????????????????????
    <table>??
    ????????????????????????
    <tr><td?colspan?=?"2"><input?type?=?"hidden"?id?=?"errMsg"></td></tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?class?=?"label"><span?class?=?"requiredFlag">*</span>SAP?ID</td>??
    ????????????????????????????
    <td><input?type="text"?name="sapId"?id?=?"sapId"?class?=?"required"></td>??
    ????????????????????????
    </tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?class?=?"label"><span?class?=?"requiredFlag">*</span>Password</td>??
    ????????????????????????????
    <td><input?type="password"?name="password"?id?=?"password"?class?=?"required"></td>??
    ????????????????????????
    </tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?colspan?=?"2"?align?=?"center"><input?type?=?"submit"?class?=?"submit"?value?=?"Login">??
    ????????????????????????????????
    <button?class?=?"submit"?onclick?=?"Login.goRegister()">Register</button></td>??
    ????????????????????????
    </tr>??
    ????????????????????
    </table>??
    ????????????
    </fieldset>??
    ????????????
    </td>??
    ????????
    </tr>??
    ????
    </table>??
    </form>?
    Javascript代碼
    window.onload?=?function(){???
    ????
    //?自定義驗證器并注冊到Validation中???
    ????var?validatorName?=?"validate-login-info";???
    ????Validation.add(validatorName,?
    "",?function(){return?false;});????//?驗證器初始化???
    ????var?validator?=?new?Validation('frmLogin',?{stopOnFirst:true,?immediate:true});????//?提交前進行后臺驗證???
    ????Event.observe("frmLogin",?"submit",?function(ev){???
    ????????
    var?result?=?validator.validate();???
    ????????
    if?(result){???
    ????????????
    var?request?=?new?Ajax.Request(???
    ????????????
    "http://localhost:8080/agreement/CheckLoginInfo",??//?提交的URL???
    ????????????{???
    ????????????????method:?'get',???
    ????????????????asynchronous:?
    false,???
    ????????????????parameters:?Form.serialize(
    "frmLogin"),???
    ????????????}
    );???
    ????????????
    //?驗證不通過,顯示出錯信息,?并中止提交操作!???
    ????????????var?transport?=?request.transport;???
    ????????????
    if?(transport.responseText?!=?""){???
    ????????????????Validation.get(validatorName).error?
    =?transport.responseText;???
    ????????????????[validatorName].all(Validation.test.bind($(
    "errMsg")));???
    ????????????????Event.stop(ev);???
    ????????????}
    ???
    ????????}
    ???
    ????}
    )???
    }
    ??
    應用三:
    需求:典型注冊應用, 密碼和確認密碼的一致性驗證

    Html代碼
    <form?method=post?action=""?id?=?"frmRegister">??
    ????
    <table?align?=?"center"?style?=?"height:100%">??
    ????????
    <tr>??
    ????????????
    <td>??
    ????????????????
    <fieldset?style?=?"padding:10px">??
    ????????????????
    <legend>Register</legend>??
    ????????????????????
    <table>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?class?=?"label"><span?class?=?"requiredFlag">*</span>SAP?ID</td>??
    ????????????????????????????
    <td><input?type="text"?name="sapId"?id?=?"sapId"?class?=?"required"></td>??
    ????????????????????????
    </tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?class?=?"label"><span?class?=?"requiredFlag">*</span>Password</td>??
    ????????????????????????????
    <td><input?type="password"?name="password"?id="password"?class?=?"required"></td>??
    ????????????????????????
    </tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?class?=?"label"><span?class?=?"requiredFlag">*</span>Re-Password</td>??
    ????????????????????????????
    <td><input?type="password"?name="repassword"?id="repassword"?class?=?"validate-identical"></td>??
    ????????????????????????
    </tr>??
    ????????????????????????
    <tr>??
    ????????????????????????????
    <td?colspan?=?"2"?align?=?"center"><input?type?=?"submit"?class?=?"submit"?value?=?"Register"></td>??
    ????????????????????????
    </tr>??
    ????????????????????
    </table>??
    ????????????
    </fieldset>??
    ????????????
    </td>??
    ????????
    </tr>??
    ????
    </table>??
    </form>

    Javascript代碼
    window.onload?=?function(){???
    ????
    //?添加password一致性驗證???
    ????Validation.add("validate-identical",?"the?value?of?password?and?repassword?must?be?identical",?function(v){???
    ????????
    return?!Validation.get('IsEmpty').test(v)?&&?v?==?$F("password");???
    ????}
    )????//?驗證器注冊???
    ????var?validator?=?new?Validation('frmRegister',?{stopOnFirst:true,?immediate:true});???
    }
    ??

    轉自:http://www.javaeye.com/topic/155337

    posted on 2008-09-03 15:14 duansky 閱讀(441) 評論(0)  編輯  收藏 所屬分類: JavaScript

    主站蜘蛛池模板: 中文字幕av无码无卡免费| 日韩精品内射视频免费观看| 毛片免费视频在线观看| 91精品国产亚洲爽啪在线影院| 两个人看的www视频免费完整版| 亚洲欧洲日产国码一级毛片| 一级全免费视频播放| 亚洲色偷拍区另类无码专区| www成人免费观看网站| 国产精品亚洲玖玖玖在线观看| 又大又硬又粗又黄的视频免费看 | 日本高清免费中文在线看| 亚洲av无码成人精品区| 一级毛片免费播放视频| 亚洲精品美女久久777777| 韩国日本好看电影免费看| 在线观看亚洲天天一三视| 99热亚洲色精品国产88| 毛片a级毛片免费播放100| 亚洲av永久中文无码精品综合| 无码专区一va亚洲v专区在线| 精精国产www视频在线观看免费| 久久亚洲高清观看| 亚洲国产精品免费在线观看| 亚洲精品伦理熟女国产一区二区| 亚洲国产电影av在线网址| 性无码免费一区二区三区在线| 亚洲免费观看在线视频| 国产片免费福利片永久| 久久成人永久免费播放| 亚洲一区二区三区四区在线观看| 女人18毛片水真多免费播放| av电影在线免费看| 亚洲精品综合久久中文字幕| 国产成人免费手机在线观看视频| 男人天堂免费视频| 国产 亚洲 中文在线 字幕| 亚洲熟女乱综合一区二区| 综合在线免费视频| 免费一级毛suv好看的国产网站| 亚洲宅男永久在线|