web2py ajax调用从索引以外的页面失败

时间:2011-10-15 18:20:26

标签: web2py

我正在使用web2py ajax函数,如下所示:

在index.html中

{{=INPUT(_name='total_buy', _onkeyup=
  "ajax('key',['total_buy'], ':eval')")}}

<div id="target"></div>

和default.py

def key():
return "jQuery('#target').html('%s');" % repr(float(request.vars.total_buy))

这完美无缺。当在输入字段中输入数字时,它立即回显到目标div。

但是,当我将其复制到另一个页面时,它会停止工作。我没有看到输入的数字被回应。

例如,我将代码从index.html移到plan.html并保持其他所有内容不变,我继续在索引页面中看到echo,但不会在新的计划页面中看到。

看一下服务器日志,我看到了:

127.0.0.1, 2011-10-15 13:55:50, POST, /medaim/default/key, HTTP/1.1, 200, 0.047000
127.0.0.1, 2011-10-15 13:55:52, POST, /medaim/default/key, HTTP/1.1, 200, 0.047000
127.0.0.1, 2011-10-15 13:55:52, POST, /medaim/default/key, HTTP/1.1, 200, 0.078000
127.0.0.1, 2011-10-15 13:55:59, GET, /medaim/default/plan/1, HTTP/1.1, 200, 0.094000
127.0.0.1, 2011-10-15 13:56:01, POST, /medaim/default/plan/key, HTTP/1.1, 500, 0.250000
127.0.0.1, 2011-10-15 13:56:01, POST, /medaim/default/plan/key, HTTP/1.1, 500, 0.218000
127.0.0.1, 2011-10-15 13:56:02, POST, /medaim/default/plan/key, HTTP/1.1, 500, 0.265000

似乎从计划页面调用/ medaim / default / plan / key而不是/ medaim / default / key

我该如何处理?

1 个答案:

答案 0 :(得分:1)

尝试

{{=INPUT(_name='total_buy', _onkeyup=
    "ajax('%s', ['total_buy'], ':eval')" % URL('default', 'key'))}}