• 原创js模型驱动


    使用ajax方式请求数据,向页面展示一个对象的时候,往往让人头疼的是一大堆 .val()  .text()方法,这样做固然不会出错,但是效率太低

    以下提供一个自己编写的Jquery模型驱动插件,正在测试中....目前可用。

    前提:自行扩展data-model属性,用来控制数据展示

     1 /**
     2  * jquery-model.js
     3  * author  brose
     4  *
     5  **/
     6 ;(function(o) {
     7       o.fn.extend({
     8           modelDriver: function(obj) {
     9               var _this = this,
    10                   setting = obj || {};
    11               _this.find("[data-model]").each(function(index, item) {
    12                   var $item = $(item),
    13                       _nodeName = item.nodeName,
    14                       _modelName = $item.attr("data-model");
    15                   for (var i in setting) {
    16                       if (i === _modelName) {
    17                           if (_nodeName === "INPUT" || _nodeName === "SELECT") {
    18                               $item.val(obj[i]);
    19                           } else {
    20                               $item.text(obj[i]);
    21                           }
    22                       }
    23                   }
    24               })
    25 
    26           }
    27       });
    28   })($);
    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <script src="js/jquery-1.8.3.min.js"type="text/javascript"></script>
    <script src="js/jquery-model.js"type="text/javascript"></script>
    
    <script>
    
    var _ajaxResult={username:"Brose",company:"中南海"}
    $(function(){
        $("#myModel").modelDriver(_ajaxResult);
    })
    
    </script>
    
    </head>
    <body>
        <div id="myModel">
            用户名:<span data-model="username"></span><br>
            密码:<input type="text" data-model="company" name="company" value="">
        </div>
    </body>
    </html>
  • 相关阅读:
    sublime打开txt文件乱码的问题
    while循环小例
    mongoDB内置文档定义
    WebStorm 10.0.3注册码
    angularjs之ng-mode获取lobject类型里的键值
    前端打印console
    js去掉数组的空字符串
    js数组去重的三种方式的比较
    js数据类型之判断
    Bootstrap中的datetimepicker浅谈
  • 原文地址:https://www.cnblogs.com/Brose/p/jquery_js_model.html
Copyright © 2020-2023  润新知