<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

    主站蜘蛛池模板: 久久久久亚洲精品无码系列| 国产成人免费全部网站| 91精品国产亚洲爽啪在线影院| 免费视频成人国产精品网站| 久久免费观看国产精品| 永久黄网站色视频免费| 亚洲人成7777| 日本一区二区三区免费高清 | 亚洲免费闲人蜜桃| 亚洲男人天堂av| 美女被免费喷白浆视频| 精品亚洲视频在线观看| 国产免费MV大全视频网站| 亚洲综合区小说区激情区| 亚洲乱色伦图片区小说| 久久中文字幕免费视频| 中文字幕亚洲综合精品一区| 国产在线jyzzjyzz免费麻豆| 亚洲狠狠成人综合网| 中文字幕免费在线观看动作大片| 国产亚洲色视频在线| 免费看男人j放进女人j免费看| 亚洲欧洲另类春色校园小说| 69xx免费观看视频| 精品免费AV一区二区三区| 国产精品久久亚洲一区二区| 亚洲成a人片在线观看国产| 在线观看免费视频一区| 亚洲精品视频免费看| 四虎影视免费在线| 成人A毛片免费观看网站| 亚洲一区中文字幕久久| 久久久国产精品福利免费| 亚洲激情黄色小说| 波多野结衣视频在线免费观看| a毛片免费播放全部完整| 亚洲ts人妖网站| 欧美三级在线电影免费| 青青草97国产精品免费观看| 久久国产亚洲精品无码| 国产大片91精品免费看3|