我有一个jquery自动完成,并在我的网格中添加了jquery添加弹出窗口。 我希望在自动完成(用户列)选择的基础上填充选择的(adrs列)值,即ajax应该对后端进行自动完成选择并获得所选的结果。 为此,我希望在填充自动完成后调用所选的dataInit。
我怎么能这样做,因为一旦弹出窗口就会调用dataInit。
我正在关注的步骤
预期行为: 1.从用户自动完成下拉列表中选择用户 2.在ajax调用中发送所选用户值,这将有助于填充所选下拉列表。
问题:
谢谢..
{name:"user",index:"user",editoptions:{
dataInit: function (elem) {
setTimeout(function(){
var dataSrc= function(request, response,term) {
$.ajax({
//this will populate autocomplete
};
$(elem).autocomplete({
source: dataSrc,
minLength: 3
});
},50);
}
}
},
{name:"adrs",index:"adrs",edittype:'select','editoptions': {
dataInit: function (elem) {
var optionBlank = document.createElement('option');
optionBlank.text = "esefasd1" ;
optionBlank.value = "ds1fas" ;
elem.add(optionBlank);
var option = document.createElement('option');
option.text = "esefasd" ;
option.value = "dsfas" ;
elem.add(option);
$(elem).chosen();
}//END Dataint
}}
我想为adrs列启动一个ajax,它会将选定的用户作为输入。到目前为止,这个选择只会弹出一个弹出窗口。我想在选择用户后填充它。
答案 0 :(得分:0)
您可以通过在autocomplete
中包含setTimeout
的来电来解决问题:
dataInit: function (elem) {
setTimeout(function () {
$(elem).autocomplete({...});
}, 50);
}
答案 1 :(得分:0)
感谢Oleg的支持。 我通过调用用户dataEvents(类型:'blur')中的方法来填充选择的adrs并在此方法中调用“selected:updated”。