我有以下行元素,并且有一个双击事件。
<tr ondblclick="onLabelDoubleClicked(this)">
<td><label id="labelId" >My Label</label></td>
<td><input type="text" id="myInput" data-bind="kendoDropDownList: { data: source, value: myValue, enable: true }" /></td>
</tr>
双击我需要在input元素中设置enable
kendoDropDownList
属性以切换为true / false。
的javascript:
onLabelDoubleClicked = function (event) {
}
我搜索了event
属性,但找不到任何有用的内容来获取enable property
并对其进行操作。任何有关工作示例的帮助将不胜感激。谢谢!
答案 0 :(得分:3)
如果将处理程序放在JS代码中并从那里遍历/更改DOM,则不会内联doubleclick事件。
我不确定data-bind
属性中的剑道内容,但对我来说它看起来像一个字符串,因此除非你有更好的方法,否则你需要进行字符串替换。
试试这个:
$('tr').dblclick(function() {
var $el = $(this).find(':text'),
data = $el.data('bind');
if (/true/.test(data)) {
data = data.replace(/true/,'false');
} else if (/false/.test(data)) {
data = data.replace(/false/,'true');
}
$el.prop('data-bind', data);
});
答案 1 :(得分:1)
如果你可以使用jQuery(并且标记集暗示你是),为什么不只是使用jQuery(和Kendo)方法呢?
$('tr').dblclick(function() {
var $kd = $(this).find('input').data("kendoDropDownList");
$kd.enable( $kd.element.is(':disabled') );
});