首頁 > 後端開發 > php教程 > javascript - thinkphp开发的页面在手机浏览器ajax兼容问题

javascript - thinkphp开发的页面在手机浏览器ajax兼容问题

WBOY
發布: 2016-06-06 20:24:40
原創
1153 人瀏覽過

一个简单的表单提交的页面,在chrome&ie下测试正常,在安卓手机上失效。

环境:

  • thinkphp 3.2

  • jquery 1.11.3

  • layer-v2.1 弹层组件

目前做了2个例子,请求正常的有:

<code class="javascript">$.post("/api/sms/send_sms.php", {phone:phone}, function(result) {
    if(result.status==1){
        resetCode(); //倒计时
    }else{
        layer.open({
            title: '错误',
            type: 1,
            skin: 'layui-layer-red', //样式类名
            closeBtn: true, //不显示关闭按钮
            shift: 2,
            shadeClose: true, //开启遮罩关闭
            content: result.msg
        });
    }
});
        </code>
登入後複製
登入後複製

测试chrome & ie & 手机UC浏览器 & 微信 正常而换用

<code class="javascript">$.post("/index.php?m=active&a=save_info", {phone:phone}, function(result) {
    if(result.status==1){
        resetCode(); //倒计时
    }else{
        layer.open({
            title: '错误',
            type: 1,
            skin: 'layui-layer-red', //样式类名
            closeBtn: true, //不显示关闭按钮
            shift: 2,
            shadeClose: true, //开启遮罩关闭
            content: result.msg
        });
    }
});
        </code>
登入後複製
登入後複製

后,在手机浏览器中不能正常弹出layer层。

2者区别主要的post的url不一样,问题很诡异,请前端大神看看

回复内容:

一个简单的表单提交的页面,在chrome&ie下测试正常,在安卓手机上失效。

环境:

  • thinkphp 3.2

  • jquery 1.11.3

  • layer-v2.1 弹层组件

目前做了2个例子,请求正常的有:

<code class="javascript">$.post("/api/sms/send_sms.php", {phone:phone}, function(result) {
    if(result.status==1){
        resetCode(); //倒计时
    }else{
        layer.open({
            title: '错误',
            type: 1,
            skin: 'layui-layer-red', //样式类名
            closeBtn: true, //不显示关闭按钮
            shift: 2,
            shadeClose: true, //开启遮罩关闭
            content: result.msg
        });
    }
});
        </code>
登入後複製
登入後複製

测试chrome & ie & 手机UC浏览器 & 微信 正常而换用

<code class="javascript">$.post("/index.php?m=active&a=save_info", {phone:phone}, function(result) {
    if(result.status==1){
        resetCode(); //倒计时
    }else{
        layer.open({
            title: '错误',
            type: 1,
            skin: 'layui-layer-red', //样式类名
            closeBtn: true, //不显示关闭按钮
            shift: 2,
            shadeClose: true, //开启遮罩关闭
            content: result.msg
        });
    }
});
        </code>
登入後複製
登入後複製

后,在手机浏览器中不能正常弹出layer层。

2者区别主要的post的url不一样,问题很诡异,请前端大神看看

先都注释掉function里的代码,直接alert(1),看看是不是2个方法都可以执行,然后一点点排除

是没弹出来还是layer的样式没加载进来啊

thinkphp是不是有做一些过滤,诸如验证是否登录之类的。建议还是console.log(result);慢慢排查吧。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板