javascript
  • html
  • kendo-listview
  • 2017-03-28 29 views 1 likes 
    1

    我需要准备一个剑术的ListView,其中每个项目是输入复选框等所示的图像。 enter image description here绑定输入复选框的属性检查,以一个字段

    这ListView控件绑定一个具有两个属性的对象的列表:“标题” &“器isChecked”

    我用下面的模板编写本ListView控件:

    <script type="text/x-kendo-tmpl" id="checkBoxListTemplate"> 
    
           <div style='margin-left:5px;'> 
            <label style='font-weight: normal;'> 
             <input type="checkbox" />#: Title# 
            </label> 
           </div> 
          </script> 
    
    var _data = []; 
    _data.push({"Title" : "123", "IsChecked" : true}); 
    _data.push({"Title" : "ABCD", "IsChecked" : false}); 
    
    var _dataSource = new kendo.data.DataSource({ 
        data: _data 
    }); 
    
    
        $("#lstView").kendoListView({ 
           dataSource: _dataSource, 
           template: kendo.template($("#checkBoxListTemplate").html()) 
          }); 
    

    正如在模板中可以看到“标题”属性必须显示复选框的内容,但我需要将输入的checked属性绑定到“IsChecked”字段,以便如果它的值为true,那么复选框应该显示为已选中或未选中,如果为false,则取决于该财产的价值。

    如何CheckBox的Checked属性绑定到“器isChecked”场?

    一个问题..是有可能有双向绑定,这样如果我手动检查/取消选中该复选框,将其值的“器isChecked”在DataSource属性改变了吗?

    回答

    1

    您可以使用剑道模板中的条件是这样的:

    ​​

    这里是工作的代码片段。

    var _data = []; 
     
        _data.push({ 
     
        "Title": "123", 
     
        "IsChecked": true 
     
        }); 
     
        _data.push({ 
     
        "Title": "ABCD", 
     
        "IsChecked": false 
     
        }); 
     
        var _dataSource = new kendo.data.DataSource({ 
     
        data: _data 
     
        }); 
     
        $("#lstView").kendoListView({ 
     
        dataSource: _dataSource, 
     
        template: kendo.template($("#checkBoxListTemplate").html()) 
     
        });
    <!DOCTYPE html> 
     
    <html> 
     
    <head> 
     
        <script src="https://kendo.cdn.telerik.com/2017.1.223/js/jquery.min.js"></script> 
     
        <script src="https://kendo.cdn.telerik.com/2017.1.223/js/kendo.all.min.js"></script> 
     
    </head> 
     
    <body> 
     
    <div id="lstView"> 
     
        <script type="text/x-kendo-tmpl" id="checkBoxListTemplate"> 
     
    
     
           <div style='margin-left:5px;'> 
     
            <label style='font-weight: normal;'> 
     
             <input type="checkbox" #if(IsChecked){# checked="checked" #}# />#: Title# 
     
            </label> 
     
           </div> 
     
          </script> 
     
    </div> 
     
    </body> 
     
    </html>

    +1

    谢谢..!工作对我来说.. – user2091061

    +0

    一个问题..是有可能有双向绑定,这样如果我手动检查/取消选中该复选框,将其值的“器isChecked”在DataSource属性改变了吗? – user2091061

    +0

    是的,这是可能的。为此,您需要使用CRUD数据操作:http://docs.telerik.com/kendo-ui/framework/datasource/crud并使用'autoSync'。 – Adnan

    相关问题