0
下面是我的代码逻辑的多单选择/组合框
<%@taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<script type="text/javascript">
var flag = false;
function test(selObject)
{
alert("hi");
var form = document.forms[0];
alert("form"+form);
var txtS = form["city"];
alert("txt"+txtS);
var len = txtS.length;
alert("len"+len);
for(var i=0; i<len; i++)
{
if (selObject == txtS[i])
{
if(txtS[i].value==txtS[i].options[3].value)
{
alert("YOU ARE SELECTING MYSORE CITY");
flag = true;
}
if(!txtS[i].options[3].selected && flag)
{
var result = confirm("Are you sure you wnat to travel to this city");
if(result)
{
flag = false;
}
else
{
txtS[i].options[txtS[i].options.selectedIndex].selected=false;
txtS[i].options[4].selected=true;
}
}
}
}//end of for loop
}
</script>
<html:form action="/login">
username:<input type="text" name="username" /></br>
password:<input type="password" name="password"/></br>
<%
for(int i = 0; i < 10; i++){
%>
<html:select property="city" onchange="javascript:test(this);">
<html:option value="B">BANGALORE</html:option>
<html:option value="C">CHENNAI</html:option>
<html:option value="M">MANGALORE</html:option>
<html:option value="MR">MYSORE</html:option>
</html:select></br>
<%
}
%>
<input type="submit" value="submit"/>
</html:form>
当选择框或组合框被循环十次,然后我得到form["city"]
长度为10妥善和内alerts
行为combox-box是合适的,但是如果我有一个单选框,则不会给form["city"]
长度为1
,而会将其作为4
这是我的下拉框中的option
元素的数量。
所以我的逻辑在这里不起作用。
如何使它适用于单个以及多个组合/选择框。
在此先感谢。任何帮助,将不胜感激。
感谢lot.That工作 – cxyz 2012-07-30 11:37:54
函数的onload() { \t变种形式= document.forms [0]; \t var formObj = form [“city”]; \t var len = formObj.length; \t var cityvalue = formObj.value; \t if(cityvalue ==“B”) \t { \t \t flag = true; \t} } – cxyz 2012-07-31 10:00:48
以上是调用页面的onload函数,当单选元素有效时,可以正常工作,但单选元素的长度显示为3. behvaiour对于单选元素很好。为多个选择元素做?或者如果有3个选择元素,它会导致模糊不清。任何人都可以帮助我? – cxyz 2012-07-31 10:03:01