1

我正在尝试编写一个 jQuery,即使将一个条目插入到这样的表中:

 $('#insertButton').on('click',function(){
        {{db.myTable.insert(user_id=auth.user_id, text=myText)}}
  });

作为我正在尝试做的一个真实的一般例子。它位于我的块中问题是加载视图时,该功能会自动触发。每次加载页面时都会插入。是否有一些 web2py 的怪癖不允许您将 python 代码嵌入到您的 jQuery 事件中?有没有解决的办法?

4

1 回答 1

1

在 web2py 模板中,第一次生成页面时,所有 Python 代码都在服务器上执行。该行:

{{db.myTable.insert(user_id=auth.user_id, text=myText)}}

不以 开头=,因此它不会在 HTML 响应中写入任何内容。相反,它只是在服务器上执行该 Python 代码。你不能简单地将 Python 嵌入到你的 Javascript 中——浏览器不知道如何处理它。

如果您想使用 Javascript 在服务器上触发插入,则必须通过 Ajax 调用处理插入的操作来实现。请参阅此处以及有关 jQuery.ajax方法的文档。

于 2013-07-12T17:48:45.010 回答