我有一个html输入,其中包含k-textbox类,使其成为一个剑道风格的输入文本框:
<input id="LocationInput" class="k-input .k-textbox" data-bind="value:location"/>
然后,当我打开创建事件弹出窗口(位置输入文本框所在的位置)时,我有一个用户指定的LocationInput参数,带有一个他们希望自动填充的值......
我做$('#'+paramData[i].fieldName+'Input').val(paramData[i].recordId);
其中paramData是传递参数的数组,fieldName将是&#39; Location&#39;和recordId将是它的价值。在此之后,使用console.log检查时,在控制台中正确设置了文本,但是在创建事件弹出窗口中没有反映任何更改,该框仍为空。我尝试添加&#39; .change()&#39;在&#39; .val()&#39;之后但那也没有做任何事情。
如何获得&#39; k-textbox&#39;当输入是创建事件模板的一部分时输入以反映我在javascript中设置的值?
答案 0 :(得分:1)
要查找输入,您应该在传递给处理程序的事件对象的容器元素中进行搜索:
function yourSchedulerAddOrEditEventHandler(e) {
e.container.find('#'+paramData[i].fieldName+'Input').val(paramData[i].recordId);
e.container.find('#'+paramData[i].fieldName+'Input').trigger("change");
}
有关详细信息,请参阅此处http://docs.telerik.com/kendo-ui/api/javascript/ui/scheduler#events