Javascript 通过Ajax发送到python的URL位置
我想拼凑一些代码。我正试图将两种不同的功能合并为一种 代码是:Javascript 通过Ajax发送到python的URL位置,javascript,jquery,python,ajax,Javascript,Jquery,Python,Ajax,我想拼凑一些代码。我正试图将两种不同的功能合并为一种 代码是: <!DOCTYPE html> <head> <meta http-equiv="content-type" content="text/html;charset=UTF-8"> <script src="http://code.jquery.com/jquery-1.5.js"></script> </head> <body> <cente
<!DOCTYPE html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
<script src="http://code.jquery.com/jquery-1.5.js"></script>
</head>
<body>
<center>
# first function
<form id="search_box"><input id="search_text" type="text"/></form>
<br/>
<div id="jQuery_send"></div>
<div id="python_response"></div>
<script>
$('#search_box').submit(function() {
$('#jQuery_send').text("jQuery sent: " + $('#search_text').val() );
$.ajax(
{
type: "POST",
url: "test2.py",
data: "stuff_for_python=" + $('#search_text').val(),
success: function(response)
{
$('#python_response').text("Python returned: " + response);
}
});
return false;
});
</script>
#second function
<p id="demo"></p>
<button onclick="urlLocation()">Click here to get URL of the page</p>
<script>
function urlLocation()
{
var loc = location.href;
document.getElementById("demo").innerHTML=loc;
}
</script>
</center>
</body>
</html>
对于函数1,输入到搜索框中的任何内容都将通过jQuery/AJAX发送到python脚本,并由框下的jQuery和python进行响应
Function2使用一个按钮,单击该按钮时,使用JavaScript在其下方打印当前URL
我想弄明白的是,有没有办法单击一个按钮,然后让jQuery和python以类似的方式响应当前URL(函数2)(函数1)?我是个编程新手,我想弄清楚所有的部分是如何组合在一起的。我意识到上面的代码本身并没有多大作用,但如果在将来的项目中进行定制,它可能会很有用
Python 2.7.6以及Apache2正在我的测试环境中使用 让我看看我是否理解你的要求 首先,作为一般建议,建议不要使用inline
onclick
属性,而是将HTML和JavaScript分开。要触发按钮的onclick事件,可以使用:
document.getElementById("foo").onclick = function_name;
或者,您可以使用jQuery:
$("#foo").click(function_name);
您甚至可以内联声明函数并执行以下操作:
$("#foo").click(function() {
var loc = window.location.href;
$("#demo").text(loc);
$.ajax({
type: "POST",
url: "...",
data: {
stuff_for_python: loc
},
success: function(response) {
// do something with response
}
});
});
为了得到我想要的,我稍微改变了答案。最后,这就是我使用的代码:
<script>
$("button").click(function(){
var loc = window.location.href;
$.post("...",
{stuff_for_python: loc},
function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
});
</script>
$(“按钮”)。单击(函数(){
var loc=window.location.href;
美元后(“…”,
{stuff_for_python:loc},
功能(数据、状态){
警报(“数据:+数据+”\n状态:+状态);
});
});
为了简单起见,我选择使用警报,而不是在页面上呈现URL。我最感兴趣的是单击一个按钮(将当前URL作为变量创建),然后将该变量发送到python
<script>
$("button").click(function(){
var loc = window.location.href;
$.post("...",
{stuff_for_python: loc},
function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
});
</script>