您好,欢迎来到汇智旅游网。
搜索
您的当前位置:首页ajax异步无法获得返回值及无法操作iframe

ajax异步无法获得返回值及无法操作iframe

来源:汇智旅游网
1、ajax异步无法获得返回值
function GetUserInfo() {
    var username;
    $.ajax({
        type: "get",
        url: "Handle/OpeartionHandler.ashx",
        success: function(userinfo) {
            username = userinfo;
        }, error: function(data) {
            username = "";
        }
    });
    return username;
}
异步得到的username为undefined,原因是Jquery的ajax是异步的, 异步只能回调。 所以大多时候没执行完AJAX就return htmlcontent了,所以会一直返回undefined,解决:添加async: false,即修改此方法为同步。 

2、 ajax异步无法操作iframe
function getVedio() { 
var params = '{BuildingID:"14"}'; //将用户名和密码作为参数传过去
 $.ajax(
    { url: "../Controls/WebFormToAjaxBy_FJ007.aspx/GetAnnouncement", //调用后台方法 
     data: params,
     type: "post", 
     dataType: 'text', 
     async: false, 
     contentType: "application/json; charset=utf-8", //设置类型,注意一定不能丢 success:         function (data) { 
        var mydata = $.parseJSON($.parseJSON(data).d);
        console.log(mydata);                  
        console.log("datalenth:" + mydata.length);
        if (mydata.length === 0) { 
          $("#item2").wrapAll("  "); $("#item3").wrapAll("  "); }
          var VedioC = mydata[0].MessageInfo; 
          var hasVideo = /<\/video>/.test(mydata[0].MessageInfo); 
         if (mydata.length>0) { 
          if (hasVideo === false) { 
           $("#infroContent").append(mydata[0].MessageInfo); 
           $("#item2").wrapAll("  "); 
           } else if (hasVideo === true) {
             $("#item3").wrapAll("  "); 
             var VideoS = VedioC.split('src="');
             var VideoSrc = VideoS[1].split('"'); 
             $("#iframeVideo").attr("src", VideoSrc[0]); 
              console.log(VideoSrc[0]); }
            } 
    } 
       }); 
            } 改为同步即可操作iframe

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- hzar.cn 版权所有 赣ICP备2024042791号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务