所以这可能是个愚蠢的问题,但我已经研究了大约4个小时。我是自学成才的Python (这意味着我可以通过,但不是很好),我试图把我的脚本扩展到Django。然而,我需要一些客户端脚本,所以我尝试使用jQuery做一些非常非常基本的Javascript内容,因为有很多这样的演示。
然而,一切都不起作用。我可以找到像这样的教程:http://webcloud.se/log/AJAX-in-Django-with-jQuery/,它看起来非常有用,但它们缺少信息(在本例中,Javascript端提供的所有内容都是没有触发器的函数的代码)。当我尝试将jQuery代码嵌入到Django模板中时,它不起作用,但我不知道这是因为我围绕给出的代码编写的东西是错误的,还是因为我得到的东西给了我问题,因为某些设置是错误的。
基本上,我希望看到一个非常简单的例子,将数据从Javascript发送到Django (例如,发送当前的时间戳),点击,Django,然后从双方发布,完全。(对于这类问题,我看过许多其他StackOverflow答案,它们似乎都是更大的例子,我担心我会被一些与基本数据传输问题无关的切线搞糊涂。)我希望看到包含每个人跳过的所有标记和内容的整个Django模板、URL文件和视图文件。也许我能弄清楚到底是怎么回事开始做点什么。
提前谢谢。
更新实际上,问题可能更普遍。当我接受这个密码时:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
<script type="text/javascript" src="/usr/lib/pymodules/python2.6/django/contrib/admin/media/js/jquery.js"></script>`
<script>
$(document).ready(function(){
$("a").click(function(event){
alert("As you can see, the link no longer took you to jquery.com");
event.preventDefault();
});
});
</script>
</body>
</html>并将其保存为html文件,运行良好。当我接受相同的代码并使其成为Django模板时(除了将其放到正确的目录中并确保模板加载器被设置为加载之外,没有任何更改),它突然就不能工作了。我已经在Firefox和Chrome上测试过它。
有什么想法吗?
发布于 2012-12-31 22:47:04
发布于 2012-12-31 23:15:26
这就是我喜欢使用ajax、jquery和django的方式。
views.py:
def ajax(request):
if request.is_ajax():
// do whateverurls.py:
url(r'^ajax-url/$', 'views.ajax', name='ajax_url'),jquery:
$(document).ready( function() {
$('div#ajax-div').click(function(){
$.ajax({
type: "POST",
url:"/ajax-url/",
success: function(data){alert('Success!');}
error: function(){ alert("Error");}
});
}template.html:
<div id='ajax-div'>
<a href='{% url ajax-url %}'>Click here for ajax</a>
</div>注意,{% url %}标记有时需要在url模式的名称周围加上引号,这取决于django的版本。
https://stackoverflow.com/questions/14106532
复制相似问题