您好我的代码设置中有一个链接如下:
<a href="#" id="vtype" data-type="typeaheadjs" data-pk="4" class="editable editable-click" data-value="Sedan">Sedan</a>
这是用于初始化它的javascript:
$('a#vtype').editable({
url: '/api/editVehicleType',
success: processFieldReply,
typeahead: {
name: 'edit-vehicle-' + $(this).attr('id'),
remote: '/autocomplete/getVehicleTypes/%QUERY',
prefetch: '/prefetch/getVehicleTypes'
}
});
function processFieldReply(reply){
if (reply.status == 'error') {
return reply.msg;
}
}
我点击链接,弹出显示,我只需按下提交,然后在释放按钮之前,文本字段内的值被清除,因此我的服务器响应并出错,因为该值永远不会被发送。
经过一些调查后,我注意到只有当我设置data-type =“typeaheadjs”时才会发生这种情况,因此它可能与typeahead.js有关,而初始值为null或其他什么?
PS:当前只在页面中加载了这条js,其余的是jquery 1.10,bootrstap 3,bootstrap-editable.js,typeahead.js,typeaheadjs.js(除了原始的typeahead.js)
答案 0 :(得分:0)
我发现了问题。 x-editable尝试使用带有.val(value)的typeahead初始化后设置输入的值。但这不起作用,需要通过
来完成 $(input).typeahead('setQuery', value)
我创建了解决此问题的拉取请求:https://github.com/vitalets/x-editable/pull/579