举个例子,
<body>
<input id='text' class='easyui-textbox'>
<script>
$(function(){
$("#text").textbox("setValue","123");
});
</script>
</body>
一般这样能成功的为text赋值
但是今天在开发的时候遇到问题了,我使用easyui的tabs,我利用tabs的href的属性来加载B页面
而B页面也有上面这一段的代码。
但是不能成功的为text标签赋值(报错了,报错的意思就是text不是一个textbox),而这个时候发现text标签连easyui-textbox的一些样式都没有加载上去。显然因为js中为text赋值的方法出错了,导致text无法正常渲染,也有可能是因为class和js同时执行,导致css尚未加载完成的时候就执行了赋值的js导致出错了。。。。不知道大家有没有遇到这样的问题,求解答,各位是怎么解决的呢?
你添加上的input 首先作为一个DOM元素添加到DOM树中
接下来马上就会执行
setValue方法要求easyui的textbox对象存在-之前已经创建完成的,但是在这里是没有这个对象的~~~
解决方法为
监听tabs的unload事件,在你指定的panel上完成HTML元素的加载后
执行textbox对象的创建
js代码要放在body里面,href方式会过滤掉头