为什么我的ajax电话无效?

时间:2014-03-26 15:18:46

标签: javascript jquery python ajax

我有一个像控制模块一样工作的html页面,并且有一个按钮,当点击它时会运行一个触发警报的python脚本。当我点击它时,它什么也没做。然而,我没有在开发人员工具中收到任何错误。 python代码有效,所以脚本不是问题,而是我的ajax请求。

以下是代码:

<input type='button' class="btn btn-default" value='Alarm ON' id = 'alarm'>

<script>
        $("#alarm").click(function()
        {
            $.ajax({
            type: "GET",
            url: "lib/scripts/AlarmON.py",
            success: function(response){}
            });
        })
</script>

我知道这个电话是否有效,因为我房间的闹钟响了。

编辑: 对于那些感兴趣的人,这是我的剧本:

import suds
from suds.client import Client
from suds.transport.http import HttpAuthenticated
from suds.sax.text import Raw

def main():
    #Sends a network message to device to trigger an alarm
    url = "http://foobar/WSDL/v4.0/iLON100.WSDL"
    client = Client(url, username='ilon', password='ilon', location = 'http://foobar/WSDL/iLON100.WSDL')
    xml = Raw('<Item><UCPTname>Net/MB485/PLC/Virtual Fb/y2</UCPTname><UCPTvalue>TRUE</UCPTvalue></Item>')
    client.service.Write(xml)

if __name__ == "__main__":
    main()

UPDATE我把document.write(&#34; hi)放在success()中,如果调用有效,它会把hi写入页面,所以我不确定发生了什么......

2 个答案:

答案 0 :(得分:2)

你不能直接执行python脚本。看看这里: http://docs.python.org/2/howto/webservers.html

答案 1 :(得分:0)

还包括功能错误以查看会发生什么:

<script>
    $("#alarm").click(function()
    {
      $.ajax({
        type: "GET",
        url: "lib/scripts/AlarmON.py",
        success: function(response){
            console.log(response);
        },
        error: function(xhr){
            var status = xhr.status;
            var text = xhr.statusText;
            console.log( status + ': ' + text);
        }
      });
    })
</script>