我正在尝试这段代码:
<script type="text/javascript">
$(document).ready(function() {
$('.edit').editable('http://www.example.com/save.php', {
indicator : 'Saving...',
tooltip : 'Click to edit...',
submit : 'OK',
cancel : 'Cancel',
});
$('#cv_cd > input').autocomplete({
source: 'location.php',
minLength: 2
});
});
</script>
<div class="edit" id="cv_cd">Type</div>
此代码可与 <inputs />
正常配合使用,但是使用 jeditable,当我输入内容时不会发送任何请求。
使用 firebug 搜索代码后,jeditable 还会创建一个 input
字段,但显然这样的东西不起作用 $('#cv_cd > input').autocomplete({
有什么想法吗?谢谢
最佳答案
.autocomplete()
不是实时,因此它仅绑定(bind)到调用时存在的元素。
在您的情况下,您需要使用live
,或者最好使用delegate
来适应input
元素不存在的事实直到用户点击它。知 Prop 有自动完成功能的元素具有 ui-autocomplete-input
类,您可以执行如下操作来替换原始的 .autocomplete()
:
$("#cv_cd").delegate(".ui-autocomplete-input", "focus", function (event) {
$(this).autocomplete({
source: 'location.php',
minLength: 2
});
});
关于Jquery ui 与 Jeditable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8482583/