繁体   English   中英

Ajax Post不适用于移动浏览器

[英]Ajax Post not working for mobile browser

以下摘录调用一个php文件,该文件从数据库检索一些信息并返回值,这些值随后用于更新我的页面。 在标准浏览器上可以完美运行,但是一旦在移动设备上尝试,它就无法更新。

//function - Retrieve Stats from mysql

$(function(){

    $('.sessionset').on('click', function(e){ 

        //Retrieve Approach details onclick of an Approach button
        $.ajax({
        type: 'POST',
        dataType: 'json',
        url: '../_includes/retrieveStats.php',
        data: {approach: $(this).attr("alt")},
            success: function(data) {
                $("#approach").html("Départ "+data[0]);
                $("#stats").html(data[1]);
                $("#summary-description").html(data[2]);

            }
        });
    }); 
 //End function - Retrieve Stats from mysql
});

RetrieveStats.php的使用

echo json_encode(array($approachDisplayName, $approachStats, $summary));

返回所需的值。

我是ajax的相对新手,所以任何想法或评论都将不胜感激。

Ok为将来使用魔术变焦可能遇到的任何人弄清楚了。

问题是...当我在手机上点击按钮时,没有注册点击事件! 但是,当我将手指按在按钮上约一秒钟时,它会记录下单击。

根据检索到的记录数添加我的按钮,并使用以下php将这些按钮存储在数组中,以根据MagicZoom插件的要求创建链接样式为按钮的链接。

echo "<a 
    data-zoom-id=\"climbprofile\" 
    href=\"" . $pathZoomFolder . $arrayApproaches[$x] . "-zoom.jpg\" 
    data-image=\"" . $pathMainFolder . $arrayApproaches[$x] . "-main.jpg\" 
    type=\"button\"
    class=\"sessionset btn btn-default btn-xs \">
    <h5>Button Text</h5></a>";   

通过将以下内容添加到<a> ,可以快速地按需运行。

ontouchstart=\"$(this).trigger('click');\" 

最终的代码片段如下所示。 ontouchstart会触发适用于现在的手机,平板电脑和台式机的.sessionset类的click事件。

echo "<a ontouchstart=\"$(this).trigger('click');\" 
    data-zoom-id=\"climbprofile\" 
    href=\"" . $pathZoomFolder . $arrayApproaches[$x] . "-zoom.jpg\" 
    data-image=\"" . $pathMainFolder . $arrayApproaches[$x] . "-main.jpg\" 
    type=\"button\"
    class=\"sessionset btn btn-default btn-xs \">
    <h5>Button Text</h5></a>";  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM