【问题标题】:Get request within page在页面内获取请求
【发布时间】:2012-06-08 06:53:35
【问题描述】:

我一直在四处寻找,但我不太确定要搜索什么...

我想让网页在您第一次打开页面时向 python 脚本发送 Get 请求,也许可以选择使用按钮刷新它。有没有办法发送请求(“script.py?var=test”)并在页面中显示结果?

我之前尝试使用的东西:(没用..) 我在做傻事吗?我对 JavaScript 一无所知

    <p>Highscores:</p> 
    <p id='scores'>text</p> 
<input type='button' onclick='changeText()' value='Change Text'/>
<script type="text/javascript">
function changeText(){
    var request = new XMLHttpRequest();
    request.open("GET", "../../cgi-bin/highScore.py?scoreMethod=load&game=ulama", true)
    request.onreadystatechange = function(){
        var done = 4, ok = 200;
        if (request.readyState == done && requeset.status == ok){
                document.getElementById('scores').innerHTML = request.responseText;
        }
    };
    request.send();
}
</script>

另外,我是否应该让 python 脚本返回一个带有标题的完整页面?还是只是相关部分?

【问题讨论】:

    标签: html get request


    【解决方案1】:

    在这种情况下使用 Jquery 调用来稍微清理一下您的代码。

    同样在这种情况下,由于你的“野兽”的性质,你应该使用帖子:)

    function changeText(){
    $.ajax({
     method  : "POST",
     URL     : "../../cgi-bin/highScore.py",
     data    :  {   
                    "scoreMethod" : "load",
                    "game"        :  "ulama"
                },
     success  :  function(data) {
           $("#scores").html(data);
     }
    });
    
    
    }
    

    我还会考虑返回 JSON 和 jquery,因为从长远来看,它可能会更容易(尽管我从未玩过 python。

    【讨论】:

      【解决方案2】:

      为什么不使用 jquery 来做这件事?

      $('#scores').load('../../cgi-bin/highScore.py?scoreMethod=load&game=ulama', function(responseText, textStatus) {
            alert(textStatus);//check here whether textStatus equals 'success' or something else (maybe an error)
      }); 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多