我想使用remoteLink(以Prototype作为Javascript库)进行Ajax调用,但是我需要传递一个参数作为文本字段中的值。到目前为止,我的GSP内容如下:
<input id="email" name="email" type="text"/>
...
<g:remoteLink action="addEmail" params="[email:???]">Add</g:remoteLink>
我要代替???获取remoteLink以将电子邮件文本字段的值作为参数发送?本质上,如何在Grails标记中引用/访问DOM?
我尝试把
\$('email').value
代替???但是我的GSP中出现“无法解析脚本”错误。
谢谢
最佳答案
我之前需要做类似的事情,以下对我有用(是的,不是特别优雅):
<input id="email" name="email" type="text"/>
...
<g:javascript>
var addEmail = function()
{
${ remoteFunction (action:"addEmail", update:"update-element-id", params:" 'email=' +$('email').value ") }
};
</g:javascript>
<a href="javascript:void(0)" onclick="addEmail();return false;">add email</a>
为清晰起见,提取到javascript函数,并在参数内添加了一些空格,以使单引号更清晰。
关于grails - 在Grails中使用remoteLink的动态参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3169346/