1)我在屏幕上处理后打印链接如下 -
for i in index:
self.response.out.write('<a id="w3s" href="' + i + '">' +i+' class="testClick" </a><br>')
其中索引是已处理网址的列表。显示结果的网址类似于mysite.com/sign
2)我想知道用户点击了哪个链接。这就是我试图做的事情 -
<script>
var addressValue;
$(document).ready(function(){
$("a").click(function(){
addressValue = $(this).attr("href");
});
});
</script>
我在 addressValue 变量中获得了点击的网址,但我接下来应该怎么做。我无法获得如何使用GET或POST方法来获取变量服务器端;然后如何在我的python变量中获取字符串。
使用GET / POST :(不工作)
<script>
var addressValue;
$(document).ready(function(){
$("a").click(function(){
addressValue = $(this).attr("href");
//Method-I
$.post("https://mysite.com/sign",
{
fooParameter: addressValue,
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
//Method-II
$.ajax({
url: "https://mysite.com/sign",
method: "POST",
data: {fooParameter: addressValue},
});
</script>
然后通过以下命令
访问python字符串中的变量selectedlink=self.request.get('fooParameter')
我在哪里误会或有其他方式吗? 注意:我使用的是Google App引擎
答案 0 :(得分:1)
还有另一个解决方案,它不需要javascript。 创建指向您自己的处理程序的链接,该处理程序重定向到查询字符串。
示例:
<a target="_blank" href="/redir_url?http://www.example.com/address.html">Example address</a>
处理程序:
class RedirUrl(webapp2.RequestHandler):
def get(self):
url = self.request.query_string
logging.info('user clicked ' + url)
self.redirect(url)