[英]I'm using struts2,i'm asking about the radio button validation <s:radio>
<s:form action="creatingcv" method="post" onsubmit="return valider()" id="frmSaisie">
<s:radio name="cv.gender" label="Gender" list="{'Male','Female'}" id="Gender"/>
</s:form>
我使用了此javascript代碼,但是沒有用
function valider() {
frm=document.forms['frmSaisie'];
if(frm.elements['Gender'].value != "") {
return true;
}
else {
alert("Please choose your gender");
return false;
}
}
我使用此javascript代碼與其他組件進行了測試,並且效果很好,但與此代碼無關。
我還測試了frm.elements['Gender'].checked != false
但未返回任何內容。
對於那些仍然想使用相同的
這是我的單選按鈕
<td><s:radio id="SME_RADIO" label="SME_RADIO" name="SME_RADIO" list="#{'1':'Passed','2':'Failed'}" value="smeVO.SME_RADIO" labelposition="left" labelSeparator=":"/>
這就是您可以進行驗證的方式,如果什么都沒有選擇,那么在出現這種情況時,我將保持這種狀態
radioValidation()
{
var nameCHK ="SME_RADIO";
var selectedRadio = $('input[name='+nameCHK+']:radio:checked').val();
if( selectedRadio !='1'||selectedRadio !='2' )
{
alert( "Please provide Some Radio!" );
return false;
}
}
:數據庫CRUD !! 在那種情況下,我必須做幾個類CreateAction UpdateAction ..之后是CreateAction-validation.xml和UpdateAction-validation.xml ...,但是在這里我遇到了對象創建以及更新和讀取之間的變量的問題。必須使用不起作用的表格來傳遞。.我有3個表格用於創建,列出,編輯..將參數從清單傳遞到編輯...在這里我遇到了問題..我創建了一個附加的對象databaseEdited和i從另一種形式獲取它。.但是對象的創建是在Action類上的,這就是為什么我必須使用一個包含所有CRUD的Action的原因。即使我使用static ...仍然是null的Java lang異常。 ..
這是我的表單數據庫
<s:form action="createDb" method="POST" onsubmit="return valider()" id="frmSaisie">
<s:if test="dbs.size">
<table border="1px">
<tr>
<td>ID</td>
<td>DataBase</td>
<td></td>
</tr>
<s:iterator value="dbs">
<tr>
<td> <s:property value="dbaId"/> </td>
<td> <s:property value="dba"/></td>
<td class="tab-td">
<s:url id="update" action="redirect">
<s:param name="databaseEdited.dba" value="dba"/>
<s:param name="databaseEdited.dbaId" value="dbaId"/>
</s:url>
<s:a href="%{update}">Edit</s:a>
</td >
<td class="tab-td">
<s:url id="delete" action="deletingDb">
<s:param name="databaseDeleted.dbaId" value="dbaId"/>
</s:url>
<s:a href="%{delete}"> Delete</s:a>
</td >
</tr>
</s:iterator>
</table>
</s:if>
我的數據庫編輯表格
<s:form action="updatingDb" method="post" >
<s:div>
<% as you see i get params from databaseEdited object but the id i ought to put it manually in action class --%>
<s:textfield label="DataBase" name="databaseEdited.dba" id=DB />
</s:div>
<br>
<s:submit value="Submit" />
<s:reset key="Cancel"/>
</s:form>
在我的動作課中:
package com.consoft.cv.action;
import java.util.ArrayList;
import java.util.List;
import javax.naming.Context;
import javax.naming.InitialContext;
import com.consoft.cv.entity.*;
import com.consoft.cv.model.*;
import com.opensymphony.xwork2.ActionSupport;
public class DBAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private DBMBLocal DBEjb;
private DB database;
private DB databaseEdited;
private DB databaseDeleted;
private List<DB> dbs;
private static int uid;
public DBAction(){
try {
Context context=new InitialContext();
DBEjb=(DBMBLocal) ( context.lookup("DBMB/local"));
dbs=new ArrayList<DB>();
} catch (Exception e) {
e.printStackTrace();
}
}
public String findAll() {
this.dbs=DBEjb.findAll();
return "success";
}
public String create()
{
DBEjb.create(database);
return "success";
}
public String update()
{//the UID got from redirect method
databaseEdited.setDbaId(uid);
DBEjb.update(databaseEdited);
return "success";
}
public String delete()
{
DBEjb.delete(databaseDeleted);
return "success";
}
public String redirect()
{
//this is the key cause HERE I CAN KEEP PASS THE ID TO Update method
**uid=databaseEdited.getDbaId();**
return "success";
}
當然有吸氣劑和吸氣劑
由於這些問題,我無法使用STRUTS2驗證
認為<s:radio>
標簽將被替換為以下內容:
<input type="radio" id="Gender" value="Male"/>
<input type="radio" id="Gender" value="Female"/>
因此, frm.elements['Gender'].value != ""
將不起作用,因為有兩個元素與此匹配。 分別檢查每個元素:
function valider() {
frm=document.forms['frmSaisie'];
if(frm.elements[0].checked == true || frm.elements[1].checked == true) {
return true;
}
else {
alert("Please choose your gender");
return false;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.