我正在创建一个GSP表单,我想使用$ .ajax()调用提交。
我知道GSP会被渲染到浏览器看到的最终HTML中,因此javascript可以调用普通的HTML元素。
我的表单是这样创建的:
<g:form action="save" id="callmeForm" >
<fieldset class="form">
<g:render template="form"/>
</fieldset>
<fieldset class="buttons">
<g:submitButton name="create" class="save" value="${message(code: 'default.button.create.label', default: 'Create')}" />
</fieldset>
</g:form>
但是当最终表单以HTML格式呈现时,它缺少我在标记中提供的id字段:
<form action="/racetrack/callback/save/callmeForm" method="post" >
<fieldset class="form">
etc...
我有没有办法让id属性能够通过javascript引用它的id?
答案 0 :(得分:12)
您可以使用name属性将表单标记的名称和 id 属性设置为相同的值。
答案 1 :(得分:0)
由于您使用ajax回发到服务器,为什么不选择:
<form id="callmeForm">
代替?
在这种情况下使用gsp标签会给你带来什么好处?
或者,你可以试试g:formRemote,它有一些有趣的内置功能: http://fbflex.wordpress.com/2010/05/09/adding-javascript-validation-to-formremote-ajax-forms-in-grails/