我正在使用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
我该如何处理?
答案 0 :(得分:1)
尝试
{{=INPUT(_name='total_buy', _onkeyup=
"ajax('%s', ['total_buy'], ':eval')" % URL('default', 'key'))}}