当函数返回false时,如何在struts2 <s:submit onclick =“return function(a,b)”>从提交表单中停止</sx:submit>

时间:2012-07-19 21:02:25

标签: ajax struts2 dojo

<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>


 <html>
 <head>
  <sx:head cache="true" />
<script>
   myfunction(a, b)
  {
      if ( a> b) 
      return true;
      else
      return false;   


  }
 </script>

</head>

...

 <s:form  action="saveXXXX"  >

  .... fields....                    

  <s:submit onclick="return myfunction(a, b);" />  //THIS ONE WORKS - NON AJAX
  <sx:submit onclick="return myfunction(a, b);" /> //Using sx ajax tag 
<sj:submit onclick="return myfunction(a, b);" id="formSubmit1" targets="formResult"  value="AJAX Submit" button="true" />  //if using Jquery Plugin ajax tag

 //how to stop form submittal if function returns false.    

  </s:form> 

表单使用s:submit ..但现在我正在尝试使用sx来提交它:submit ...或者jquery的sj:submit ...

我想根据函数返回的内容使用AJAX提交表格CONDITIONALLY。

怎么做?

2 个答案:

答案 0 :(得分:0)

而不是使用提交按钮使用简单的按钮

<s:form  action="saveXXXX"  name="myForm">
    <input type="button" onclick="myfunction(a, b);"/>
</s:form>

并在您的函数中

function myfunction(a, b){
if ( a> b) 
      document.myForm.submit();
}

答案 1 :(得分:0)

您是否尝试使用'onsubmit =“返回Function();” '标签内的属性?

<s:form action="actionName" onsubmit="return myFunction();">
...
</s:form>