1、input easyui-textbox 失去焦点事件失效
<input class="easyui-textbox" type="text" id="email" name="email" data-options="required:true,"
></input>
看他的效果,其实是自动生成了别的span、input标签等。 内部生成的input标签才是输入、显示的标签
解决办法:
<input class="easyui-textbox" type="text" id="email" name="email" data-options="required:true,"></input>
$('#email').textbox({
inputEvents: $.extend({}, $.fn.textbox.defaults.inputEvents, {
blur: function (event) {
this.value = this.value.toUpperCase();
alert('OK');
}
})
})
新问题:失去焦点事件绑定后,input:textbox value值会丢失,ajax提交的时候取不到
解决办法:textbox 重新赋值
$('[name="email"]').textbox({
inputEvents: $.extend({}, $.fn.textbox.defaults.inputEvents, {
blur: function (event) {
$("#account").textbox("setValue",this.value.substr(0,this.value.indexOf("@")));
$('#email').textbox('setValue',this.value)
}
})
});
2、下拉框combobox动态渲染
Uncaught TypeError: Cannot read property 'options' of undefined
<input class="easyui-combobox" id="depart" name="depart" style="width:100px"
data-options="
valueField:'id',
textField:'name',
panelHeight:'auto'
"
>
function getDepart(){
$('#depart').combobox('loadData', []);
$.ajaxSettings.async = false;
$.get("/showTreeDepart/", function(data){
data.push({'id':'','name':"请选择"});
dataDepart = data;
$('#depart').combobox('loadData', dataDepart);
// $('#department').combobox('loadData', dataDepart);
});
}
解决办法:异步加载数据 更新速度问题 上面程序代码优化为下例:
<input class="easyui-combobox" name="depart" style="width:100px" >
function getDepart(){
$('[name="depart"]').combobox({
url: '/showTreeDepart/',
method: 'get',
valueField: 'id',
textField: 'name',
panelHeight:'auto',
onLoadSuccess: function (data){
dataDepart = data;
}
});
}
优化:下拉框添加非数据库 数据
function setDepartComboboxList(){
$.ajax({
type :"get",
async :false,
url : '/showTreeDepart/',
dataType :"json",
success :function(data){
data.unshift({id: -1, name: "全部"});
$('[name="depart"]').combobox({
data: data,
valueField :"id",
textField : "name",
panelHeight:'auto',
onSelect:function(obj){
},
onLoadSuccess: function (data){
departList = departList.concat(data);
$(this).combobox('setValue','-1')
}
});
},
error:function(){
alert("调用失败,请联系管理员");
}
});
}