layui利⽤jQuery设置下拉列表的值
  今天在利⽤jQuery动态设置下拉列表的值的时候确怎么也赋值不上去,其中⽤到了layui框架,源代码如下:
$.post(contextPath+'/courseLibrary/getCourseBaseInfoById.do',{"courseId":courseId},function (courseInfoBack) { // initSelectValue("[name='courseplatform']",urseplatform);
$("[name='courseid']").urseid);//向隐藏的课程主键赋值
$("[name='coursenum']").ursenum);
$("[name='courseplatform'] option[value='"+urseplatform+"']").attr("selected","true");
$("[name='coursenamecn']").ursenamecn);
$("[name='coursenameen']").ursenameen);
$("[name='coursenature'] option[value='"+ursenature+"']").attr("selected","true");
$("[name='credit']").dit);
$("[name='coursehour']").ursehour);
$("[name='teachhour']").achhour);
$("[name='experimenthour']").perimenthour);
$("[name='computerhour']").val(courseInfoBackputerhour);
$("[name='practicehour']").val(courseInfoBack.practicehour);
$("[name='weeklyhour']").val(courseInfoBack.weeklyhour);
$("[name='coursehourmethod'] option[value='"+ursehourmethod+"']").attr("selected","true");
$("[name='scoringway'] option[value='"+courseInfoBack.scoringway+"']").attr("selected","true");
},'json')
  后来查看页⾯源码发现option确实多了selected属性,可是由于使⽤了layui,layui将selected包装为dl与dd,所以我们看到的会失效:
解决办法:(更新渲染)
  layui的 Form模块的⾃动化渲染是会对其失效的。虽然我们没有双向绑定机制,但没有关系,你只需要执⾏der(type, filter);⽅法即可。
第⼀个参数:type,为表单的type类型,可选。默认对全部类型的表单进⾏⼀次更新。可局部刷新的ty
pe如下表:
参数(type)值描述
select刷新select选择框渲染
checkbox刷新checkbox复选框(含开关)渲染
radio刷新radio单选框框渲染
参数(type)值描述
//……
第⼆个参数:filter,为class="layui-form"所在元素的lay-filter=""的值。你可以借助该参数,对表单完成局部更新。【HTML】
<div class="layui-form" lay-filter="test1">
</div>
<div class="layui-form" lay-filter="test2">
</div>
【JavaScript】
//……
参考:
因此上述代码改为:
$.post(contextPath+'/courseLibrary/getCourseBaseInfoById.do',{"courseId":courseId},function (courseInfoBack) { // initSelectValue("[name='courseplatform']",urseplatform);
$("[name='courseid']").urseid);//向隐藏的课程主键赋值
$("[name='coursenum']").ursenum);
$("[name='courseplatform'] option[value='"+urseplatform+"']").attr("selected","true");
$("[name='coursenamecn']").ursenamecn);
$("[name='coursenameen']").ursenameen);
$("[name='coursenature'] option[value='"+ursenature+"']").attr("selected","true");
$("[name='credit']").dit);
$("[name='coursehour']").ursehour);
$("[name='teachhour']").achhour);
$("[name='experimenthour']").perimenthour);
$("[name='computerhour']").val(courseInfoBackputerhour);
$("[name='practicehour']").val(courseInfoBack.practicehour);
$("[name='weeklyhour']").val(courseInfoBack.weeklyhour);
$("[name='coursehourmethod'] option[value='"+ursehourmethod+"']").attr("selected","true");        $("[name='scoringway'] option[value='"+courseInfoBack.scoringway+"']").attr("selected","true");
layui.use(['form'], function () {
$ = layui.jquery;
jquery的attr属性
var form = layui.form;
});
},'json')
最后再次查看源代码:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。