<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                上節課程我們講到: >[info] iWebShop 系統默認提供了大量的優秀 JS 工具和插件,比如日歷,jquery,artDialog 彈出框 UI,artTemplate模板引擎等等…所有系統內置的 JS 都在\lib\web\js\jspackage_class.php 有興趣的用戶可以自己擴展一些常用工具,在模板里面引用更為簡單。 這次課程我就說明一下有哪些常用的JS工具,由于每一個JS工具的用法都能寫一本幫助文檔,所以這里只介紹JS工具的功能及用法 ## 一、iWebShop使用了哪些JS工具 打開\lib\web\js\jspackage_class.php 文件,文件開頭就是以下代碼: ~~~ //系統JS注冊表 private static $JSPackages = array( 'jquery' => array( 'js' => array( 'jquery/jquery-1.11.3.min.js', 'jquery/jquery-migrate-1.2.1.min.js' ) ), 'form' => array('js' => 'form/form.js'), 'dialog' => array( 'js' => array( 'artdialog/artDialog.js', 'artdialog/plugins/iframeTools.js' ), 'css' => 'artdialog/skins/aero.css' ), 'kindeditor' => array( 'js' => array( 'editor/kindeditor-min.js', 'editor/lang/zh_CN.js' ), 'callback' => 'initKindEditior' ), 'validate' => array( 'js'=>'autovalidate/validate.js', 'css'=>'autovalidate/style.css' ), 'my97date' => array('js' => 'my97date/wdatepicker.js'), 'artTemplate' => array( 'js' => array( 'artTemplate/artTemplate.js', 'artTemplate/artTemplate-plugin.js' ) ), 'cookie' => array('js' => 'cookie/jquery.cookie.js'), 'admanage' => array('js' => 'admanage/adloader.js'), 'chart' => array('js' => 'highcharts/highcharts.js'), ); ~~~ 每一種JS工具的源碼放在?\lib\web\js\source下面。如果要做擴展,就修改jspackage_class.php,在source下增加相應的JS文件,就可以調用了。 ## 二、JS工具介紹 **adloader.js** iwebshop自己開發的廣告加載器,60行的代碼,很簡潔。要使用廣告的頁面記得要引入這個js文件,廣告的設置在管理員后臺 **autovalidate** iWebShop開發的表單驗證插件。 **form.js** 這個也是iWebShop自己開發的插件,主要完成表單回寫的功能,在表單初始化時用比較多。 **jquery** 目前應用最廣的JS庫,好多第三方的工具都是基于jqurey開發的。 **artdialog** 對話框組件,詳細用法可看:[http://lab.seaning.com/](http://lab.seaning.com/) **artTemplate** 性能很好的javascript 模板引擎?[https://github.com/aui/artTemplate](https://github.com/aui/artTemplate) **jquery.cookie** 對cookie進行操作的工具:[https://github.com/carhartl/jquery-cookie](https://github.com/carhartl/jquery-cookie) **kindeditor** 一個富文件框的編輯器:[http://kindeditor.net/doc.php](http://kindeditor.net/doc.php) **highcharts** 一個圖表工具:[http://www.hcharts.cn/](http://www.hcharts.cn/) **my97date** 日期控件:[http://www.my97.net/](http://www.my97.net/) ## 三、validate.js,form.js的使用 這兩個js文件是為iWebShop量身定做的,下面就通過官方提供的例子說明這兩個js的使用方法。 ### validate.js 首先要通過 js 標簽引入此插件:{js:validate} form 表單中的 input 標簽中 type 為 text,password,select-one,textarea 中添屬性pattern 和 alt 屬性系統將會自動添加驗證功能 如:對 email 的驗證,在視圖文件里編寫如下代碼: ~~~ {js:validate} <form> <input name='email' pattern='email' alt='請輸入正確的 email'> </form> ~~~ 運行效果如下: 當你輸入不正確的格式時,效果如下圖所示: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808144133.png) 當你輸入正確的格式時,如下圖所示: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808165458.png) 對于 pattern 的正則系統對常用的正則都作了一些封裝如: required, email, qq , id, ip , zip, phone, mobi ,url ,date,datetime ,int ,float 等等, 如果以上還沒能滿足你的要求,則用戶可以自己寫正則,如我想讓用戶輸入一個 3-5 位的數字:則修改代碼 ~~~ <input name='email' pattern='^\d{3,5}' alt='請輸入一個 3-5 位的數字'> ~~~ 運行效果: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808165522.png) 填寫正確: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808165544.png) 另外要注意,要驗證時,隱藏輸入項目會失效,不進行驗證處理! 就是這么簡單,那么用戶如果想在驗證完后再運行自己的 js 函數怎么辦? 修改 文件 ~~~ { js:validate} <form callback='test("回調一下")'> <input name='email' pattern='^\d{3,5}' alt='請輸入一個 3-5 位的數字'> <input type='submit'/> </form> <script> function test(txt) { alert(txt); return false; } </script> ~~~ 然后點擊提交按鈕: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808165614.png) >[info] 這里要解釋一下回調函數的 return true 和 false > 如果返回的是 true,表單通過驗證后,表單將提交,不通過將不提交。 > 如果返回的是 false,則無論表單是否通過表單都將不會被提交。 下面再說一下 form.js 文件,這個主要是完成表單回寫功能的,比方說,你想讓表單里的項目初始化一些值 修改文件: ~~~ { js:form} <form name='test'> <input name='email' ></br> <input type="radio" name="sex" value='1'>男<input type="radio" name="sex" value='0'>女</br> <input type="checkbox" name="live" value='a'>看書<input type="checkbox" name="live" value='b'>打球</br> <select name="code"> <option value="c++">c++</option> <option value="java">java</option> <option value="php">php</option> </select> <input type='submit'/> </form> <script> var form = new Form('test'); form.init({'email':'a@a.com','sex':'1','live':'a;b','code':'php'}); </script> ~~~ 運行效果如下: ![](http://it.sunzoon.com/wp-content/uploads/2016/08/20160808165710.png) 同樣也可以用 getItems 取得表單里所有數據的對象。也可以用 setValue(name,value) 的方式只給一個設置對應的值,也可以通過 getValue(name)得到對應項的值。 要注意的兩點: 1、多選的時候是用 ; 號來分開的。 2、此 form 插件不能對 file 字段進行處理。 >[warning]如有不明白的地方,留言或是加入我們?“三眾技術QQ交流群”一起討論 ## 關于我們 >[danger][三眾科技](http://www.sunzoon.com)資訊平臺——大道至簡,悅你所閱! >本教程由[三眾簡悅](http://it.sunzoon.com)原創,轉載請注明出處,作者:bobball,由bobo整理成看云書籍 三眾技術交流群:**543102562** 歡迎大家加入我們,共同討論IT,互聯網技術。同時可以掃描下面的二維碼關注我們,謝謝! ![三眾科技服務號](http://it.sunzoon.com/wp-content/uploads/2016/06/qrcode_for_gh_401d25b05314_344.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看