iOS javascript POST请求奇怪的行为

时间:2018-02-20 15:57:40

标签: javascript ios iphone post safari

我正在制作一个GUI,服务器必须准确知道UI所处的状态。因此,我在每个onclick和每个change发送一个POST请求。我的用户界面在Linux和Windows上的Chrome上运行正常 - 就是它只向我的烧瓶服务器发送一堆POST,它处理数据并返回空白响应return ('', 204)。 UI仍然保持在同一页面上,因此ui仍然可见。但ios上的safari表现不同,当我做任何触发POST更新的事情时,它会发送帖子,然后尝试将浏览器位置移动到POST URL的192.168.1.1/query?arg=value,并尝试呈现空白响应我在一个白页。为什么会这样?

function post(path) {
    var form = document.createElement("form");
    form.setAttribute("method", "post");
    form.setAttribute("action", path)
    document.body.appendChild(form);
    form.submit();
}

javascript(type=text是一个名为 jQuery Knob 的jQuery旋转拨号盘)

<input type="text" class="dial" value="0" id="myRange"><br /><br />
<button id="myButton" onclick="(function() { post('/query?arg1=1234'); })();">PUSH ME</button>
<script>
    $(".dial").knob({
        'min':0,
        'max':100,
        'fgColor':"#66CC66",
        'angleOffset':-125,
        'angleArc':250,
        'rotation':"clockwise",
        'change': function(v) { post('/slider?value='+Math.round(v)); }
    });
</script>

理想情况下,我希望iOS浏览器的行为方式与桌面上的Chrome相同。感谢您的意见和帮助。

1 个答案:

答案 0 :(得分:0)

我使用了Ajax jQuery.post()并解决了它。