将数据从 .gsp 发送到控制器
Send data from .gsp to controller
我需要使用 js 或 ajax 将 .gsp 页面中文本输入的数据发送到控制器。我在 gsp 页面中的代码是
<input placeholder="<g:message code="form.search.label"/>" id="q" name="q" type="text" onkeypress=validar(event);>
<button class="button"><span class="mif-search"></span></button>
js函数为:
<script type="text/javascript">
function validar(event){
var theCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
var message = $('#q').val();
if (theCode == 13){
<g:remoteFunction controller="search" action="search" params="message" update="pageid"/>
}
}
这段代码工作正常,我希望刷新我的页面,但我需要将输入文本中的数据发送到我的控制器。我在网上冲浪,但我无法解决这个问题。我需要为此做什么?
我强烈建议使用 jQuery.ajax();
而不是 g:remoteFunction
因为在一天结束时。 g:remoteFuncion
它将呈现为 jQuery.ajax();
。例如,你有这个:
<g:remoteFunction controller="search" action="search" params="message" update="pageid"/>
这将是:
jQuery.ajax({type:'POST', url:'/YOURGRAILSAPPNAME/search/search',success:function(data,textStatus){jQuery('#pageid').html(data);},error:function(XMLHttpRequest,textStatus,errorThrown){}});
您可以测试查看网页中的 HTML。
但是如果你真的要用g:remoteFunction
。你可以使用这个
var message = $('#q').val();
if (theCode == 13)
<g:remoteFunction controller="search" action="search" params="'message='+message" update="pageid"/>
我需要使用 js 或 ajax 将 .gsp 页面中文本输入的数据发送到控制器。我在 gsp 页面中的代码是
<input placeholder="<g:message code="form.search.label"/>" id="q" name="q" type="text" onkeypress=validar(event);>
<button class="button"><span class="mif-search"></span></button>
js函数为:
<script type="text/javascript">
function validar(event){
var theCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
var message = $('#q').val();
if (theCode == 13){
<g:remoteFunction controller="search" action="search" params="message" update="pageid"/>
}
}
这段代码工作正常,我希望刷新我的页面,但我需要将输入文本中的数据发送到我的控制器。我在网上冲浪,但我无法解决这个问题。我需要为此做什么?
我强烈建议使用 jQuery.ajax();
而不是 g:remoteFunction
因为在一天结束时。 g:remoteFuncion
它将呈现为 jQuery.ajax();
。例如,你有这个:
<g:remoteFunction controller="search" action="search" params="message" update="pageid"/>
这将是:
jQuery.ajax({type:'POST', url:'/YOURGRAILSAPPNAME/search/search',success:function(data,textStatus){jQuery('#pageid').html(data);},error:function(XMLHttpRequest,textStatus,errorThrown){}});
您可以测试查看网页中的 HTML。
但是如果你真的要用g:remoteFunction
。你可以使用这个
var message = $('#q').val();
if (theCode == 13)
<g:remoteFunction controller="search" action="search" params="'message='+message" update="pageid"/>