表单select联动不更新的问题

提问 未结
5 197
商众科技
悬赏:20飞吻
你码如下:
<script>
layui.use(['admin'], function(){
var $ = layui.$
,admin = layui.admin;
admin.req({
url: '/api/phal/public/?service=Area_CURD.Getprovince'
,data: {uid: 1}
,success:function(data){
var html='';
for (var i = 0; i < data['data'].length; i++) {
html+='<option value="'+data['data'][i].id+'">'+data['data'][i].title+'</option>';
}
$('#province').html(html);
}
});
admin.req({
url: '/api/phal/public/?service=Area_CURD.Getcity&province=1'
,data: {uid: 1}
,success:function(data){
var html='';
for (var i = 0; i < data['data'].length; i++) {
html+='<option value="'+data['data'][i].id+'">'+data['data'][i].title+'</option>';
}
$('#city').html(html);
}
});

});
</script>
<script>
layui.use(['admin', 'form', 'laydate'], function(){
var admin = layui.admin
,element = layui.element
,layer = layui.layer
,laydate = layui.laydate
,form = layui.form;

form.on('select(province)', function(data){
admin.req({
url: '/api/phal/public/?service=Area_CURD.Getcity&province='+data.value
,data: {uid: 1}
,success:function(data){
var html='';
for (var i = 0; i < data['data'].length; i++) {
html+='<option value="'+data['data'][i].id+'">'+data['data'][i].title+'</option>';
}







document.getElementsByName("city").html(html);
form.render();
alert(html);
}
});

});
第一段脚本里没有use form模块,可以更新provice下拉框。为什么第二段脚本里form.on监听province 下拉框的动作,ajax获取数据正常,就是不能更新city的下拉框呢?好象 document.getElementsByName("city").html(html);这一句完全不执行。
回帖
  • select标签加入option元素后执行form.render('select')一下试试
    0 回复
  • form.on('select(province)', function(data){
    admin.req({
    url: '/api/phal/public/?service=Area_CURD.Getcity&province='+data.value
    ,data: {uid: 1}
    ,success:function(data){
    var html='<select name="city" id="city" lay-filter="city">';
    for (var i = 0; i < data['data'].length; i++) {
    html+='<option value="'+data['data'][i].id+'">'+data['data'][i].title+'</option>';
    }
    $('#citydiv').html(html+'</select>');

    form.render('select');
    alert(html);
    }
    });
    增加了也不行
    0 回复
  • 0 回复
  • luoye
    2018-4-16
    form.on('select(province)', function(data){
    admin.req({
    url: '/api/phal/public/?service=Area_CURD.Getcity&province='+data.value
    ,data: {uid: 1}
    ,success:function(data){
    var html="",result=data['data'];
    for (var i = 0; i < result.length; i++) {
    html+='<option value="'+result[i].id+'">'+result[i].title+'</option>';
    }
    $('#select').html(html);

    form.render('select');
    alert(html);
    }
    });
    0 回复
  • 我看了你的代码,演示没法打开。我跟你使用的方法基本一样,为什么我的就是不行呢。use了form模块以后怎么心也没有用。
    0 回复