在页面加载时自动执行grails formRemote

时间:2013-06-26 06:52:27

标签: javascript forms grails onload

我正在使用grails formRemote http://grails.org/doc/2.2.1/ref/Tags/formRemote.html来生成我的表单。有没有办法在pageLoad上自动提交表单。我尝试过使用Javascript技术,但似乎JS刷新了整个页面...我仍然希望保留formRemote功能,它只使用AJAX刷新页面的一部分。

2 个答案:

答案 0 :(得分:0)

我做了一个快速测试。

这是我的控制器:

package test

class NothingController {

    def index() { }

    def submit() {
        render "Hello ${params.name}"
    }
}

这是我的GSP:

<!DOCTYPE html>
<html>
    <head><meta name="layout" content="main" /><g:javascript library='jquery' /></head>
    <body>
        <g:formRemote id="myForm" name="myForm" update="updateMe" url="[controller: 'nothing', action:'submit']">
            Name: <input name="name" type="text" value="John Doe"/>
            <input type="submit" value="Go"/> 
        </g:formRemote>
        <div id="updateMe">this div will be updated</div>

        <script>
            $(document).ready(function() {
                $('#myForm').submit();
            });
        </script>
    </body>
</html>

你需要有一个像jquery这样的javascript库,所以我把它放在头脑中。否则,表单将不会在AJAX中运行。

答案 1 :(得分:0)

我使用Javascript。模拟按钮单击...

 var buttons = document.getElementsByTagName('input');
  for(var i = 0; i < buttons.length; i++) {
     if(buttons[i].type == 'button' && buttons[i].value == "Search") { //make sure you have the right button
          buttons[i].click();
          break; 
     }
  }