javascript - layer弹层获取弹层里的数据
PHPz
PHPz 2017-04-11 13:30:19
[JavaScript讨论组]

现在要获取弹层里面元素的值 这个值是后期点击的时候 添加到弹层上面的
弹层里面 是看到值已经添加上去了

但是 就是后面的select方法获取到的值只能第二次点击才能获取到 第一次 始终获取到的是之前没有改变的值

还有 我在layer.open之后 写个方法 执行了一个alert 这个始终会在layer弹出之前弹出 怎么回事 放在success:里面 也是先执行 方法

$('tbody').on('click','.edit',function(){
    $.get("Cate/getCateById",{id:$(this).attr('val')},function(data){
            $('.select-title span').attr('data-val',data.pid);
            $('.select-title span').text(data.pname);
    })
    layer.open({
         area: ['60%', '80%'],
          type: 1,
          title: false,    
          shift: 2,
          content: $('#add'),
        });
    select();
})

function select(){
    var selval=$(".select-title").find("span").attr('data-val');
    var seltxt=$(".select-title").find("span").text();
    $('#form').append("");
}

html代码部分

顶级分类

PHPz
PHPz

学习是最好的投资!

全部回复(1)
怪我咯

jqueryajax 默认是异步的, 所以你只能在成功的回调里对获取的数据进行处理。
下面是改过后的代码,你试试:

$('tbody').on('click', '.edit', function() {
  $.get("Cate/getCateById", { id: $(this).attr('val') })
    .then(function(data) {
      $('.select-title span').attr('data-val', data.pid);
      $('.select-title span').text(data.pname);
      open()
    })

})

function open() {
  layer.open({
    area: ['60%', '80%'],
    type: 1,
    title: false,
    shift: 2,
    content: $('#add'),
  });
  select();
}

function select() {
  var selval = $(".select-title").find("span").attr('data-val');
  var seltxt = $(".select-title").find("span").text();
  $('#form').append("<select style='display: none;' name='pid'><option value='" + selval + "' selected>" + seltxt + "</option></select>");
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号