2013-11-26 2 views
9

Я использую рамки Struts2 в своем приложении, у меня есть одна кнопка на моей странице JSP. ЭтоКак использовать struts2 submit tag как кнопку без отправки формы?

<s:submit type="button" name="btnSave" /> 

Теперь я хочу эту кнопку, чтобы вести себя как нормальный тип кнопки HTML не должны представить форму и выполнять функцию сценариев на onclick события. Эта функция передает форму с помощью Ajax.

Но что происходит, Struts2 преобразовать его в

<input type="submit" id="add_btnSave" name="btnSave" value="Save"/> 

И моя форма была отправлена.

1) Если я использую тег кнопки HTML, это испортит графический интерфейс. Как тема моей формы - Ajax.

Это head тег сценария

<head> 
<s:head theme="ajax"/> 
<script type="text/javascript"> 

$("btnSave").click(function(){ 
alert("aaa"); 
$.ajax({ 
url: 
type:"POST", 
dataType: "json", 
error: function(XMLHttpRequest, textStatus, errorThrown){ 
alert('Error ' + textStatus); 
alert(errorThrown); 
alert(XMLHttpRequest.responseText); 
}, 
success: function(){ 
alert('SUCCESS'); 
} 
}); 
}); 
</script> 
</head> 

Мой body тег как последователи:

<body> 
<table border="1" width="80%" align="center"> 
<tr> 
<td width="100%"> 
<s:tabbedPanel id="EmpDetail" useSelectedTabCookie="true"> 
<s:div id="one" label="Emp Reg." theme="ajax" tabindex="0" labelposition="top"> 
<center> 
<s:form name="frmEmpReg" namespace="/" method="post"> 
EMPLOYEE REGISTRATIOM TAB<br> 
<s:actionmessage /> 
<input type="hidden" name="empbean.id" value="<s:property value="empbean.id"/>"/> 
<s:textfield label="Employee First Name" name="empbean.firstName"></s:textfield> 
<s:textfield label="Employee Middle Name" name="empbean.middleName"></s:textfield> 
<s:textfield label="Employee Last Name" name="empbean.lastName"></s:textfield> 
<s:textfield label="Address" name="empbean.address"></s:textfield> 
<s:textfield label="State" name="empbean.state"></s:textfield> 
<s:textfield label="Employee Designation" name="empbean.designation"></s:textfield> 
<s:submit name="btnSave" type="submit" value="Save" align="center"/> 
</s:form> 
</center> 
</s:div> 
<s:div> 
.. 
.. 
Other Tabs 
</s:div> 
</s:tabbedPanel> 
</td> 
</tr> 
</table> 
</body> 

любой иметь любую идею его обработки с Struts2 то пожалуйста, помогите.

Ваша помощь будет действительно оценена.

ответ

9

Если вы используете s:submit тега тонированного HTML выхода является либо input или button тега, но тип submit для image типа, за исключением. Вы можете использовать этот код для выполнения javascript onclick event, который не отправляет форму. .!

<s:submit type="button" onclick="return false;"/> 
+0

По щелчку я хочу запустить JS код, как в коде выше: ** $ ("btnSave") нажмите (функция() {** Так что, если я поставил OnClick = "возвращение ложным;" мой JS код не будет выполнен. Я где-то ошибаюсь? –

+2

onclick вы можете разместить JS-код перед 'return false;' –

3

Вы попробовали preventDefault()?

$("btnSave").click(function(e){ 
    e.preventDefault(); 
    //..rest of the code 
}); 
Смежные вопросы