这段是判断所选择的城市是否属于省会城市
function GetCityText()
{ var sel = document.getElementById("s2").value;
alert(sel);
var index = sel.selectedIndex;
alert(index);
var text = sel.options[index].text;
alert(text);
return text;
}function CheckCenterCity()
{
var strs= new Array();
strs()=["北京市区","天津市区","石家庄市","太原市","呼和浩特市","沈阳市","长春市","哈尔滨市","上海市区","南京市","杭州市","合肥市","福州市","南昌市","济南市","郑州市","武汉市","长沙市","广州市","南宁市","重庆市区","成都市","贵阳市","昆明市","西安市","兰州市","西宁市","银川市","乌鲁木齐市"];
var s=GetCityText();
alert(s);
for(i=0;i<=strs.length;i++){
if(strs[i].indexof(s)!=-1)
document.form1.rsrCitySort[0].checked =true;
else
document.form1.rsrCitySort[1].checked =true;
}
}然后函数的使用在这段:
<td width="97">城市编号<span class="alerttag">*</span>:</td>
<td>
<span id="spryselect2">
<label>
<select name="rsrCity" id="s2" class="input_out" onchange="CheckCenterCity();">
</select>
</label>
<span class="selectRequiredMsg">必须选择一个市。</span></span></td>本来想一行行调试的,但是alert(sel);都没弹出来。
function GetCityText()
{ var sel = document.getElementById("s2").value;
alert(sel);
var index = sel.selectedIndex;
alert(index);
var text = sel.options[index].text;
alert(text);
return text;
}function CheckCenterCity()
{
var strs= new Array();
strs()=["北京市区","天津市区","石家庄市","太原市","呼和浩特市","沈阳市","长春市","哈尔滨市","上海市区","南京市","杭州市","合肥市","福州市","南昌市","济南市","郑州市","武汉市","长沙市","广州市","南宁市","重庆市区","成都市","贵阳市","昆明市","西安市","兰州市","西宁市","银川市","乌鲁木齐市"];
var s=GetCityText();
alert(s);
for(i=0;i<=strs.length;i++){
if(strs[i].indexof(s)!=-1)
document.form1.rsrCitySort[0].checked =true;
else
document.form1.rsrCitySort[1].checked =true;
}
}然后函数的使用在这段:
<td width="97">城市编号<span class="alerttag">*</span>:</td>
<td>
<span id="spryselect2">
<label>
<select name="rsrCity" id="s2" class="input_out" onchange="CheckCenterCity();">
</select>
</label>
<span class="selectRequiredMsg">必须选择一个市。</span></span></td>本来想一行行调试的,但是alert(sel);都没弹出来。
strs[i].toString().indexof(s)!=-1这么改试试
alert(strs[i]);
if(strs[i].indexof(s)!=-1)
return true;只弹出“北京市区”后,就再也没有内容弹出来了
{
var strs= new Array();
strs=["北京市区","天津市区","石家庄市","太原市","呼和浩特市","沈阳市","长春市","哈尔滨市","上海市区","南京市","杭州市","合肥市","福州市","南昌市","济南市","郑州市","武汉市","长沙市","广州市","南宁市","重庆市区","成都市","贵阳市","昆明市","西安市","兰州市","西宁市","银川市","乌鲁木齐市"];
var s=GetCityText();
alert(s);
for(i=0;i<=strs.length;i++){
if(strs[i].indexof(s)!=-1){
document.form1.rsrCitySort[0].checked =true;
break;
}
else
document.form1.rsrCitySort[1].checked =true;
}
}
但是如果选的不是省会城市,document.form1.rsrCitySort[1].checked =true;这句不会执行啊
function GetCityText()
{
var strs= new Array();
strs=["北京市区","天津市区","石家庄市","太原市","呼和浩特市","沈阳市","长春市","哈尔滨市","上海市区","南京市","杭州市","合肥市","福州市","南昌市","济南市","郑州市","武汉市","长沙市","广州市","南宁市","重庆市区","成都市","贵阳市","昆明市","西安市","兰州市","西宁市","银川市","乌鲁木齐市"];
//var s=GetCityText();
var s=document.getElementById("s2").value;
alert(s);
//alert(strs.length);
for(i=0;i<=strs.length;i++){
alert(strs[i]);
alert(strs[i].toString().indexOf(s));
if(strs[i].toString().indexOf(s)=0){
return true;
break;
}
else continue;
}
return false;
} function CheckCenterCity()
{
if (GetCityText()==true)
document.form1.rsrCitySort[0].checked =true;
else
document.form1.rsrCitySort[1].checked =true;
}如果选的是省会城市,则document.form1.rsrCitySort[0].checked =true;这个执行了,
但是如果选的不是省会城市,document.form1.rsrCitySort[1].checked =true;这句不会执行啊
{
var strs= new Array();
strs=["北京市区","天津市区","石家庄市","太原市","呼和浩特市","沈阳市","长春市","哈尔滨市","上海市区","南京市","杭州市","合肥市","福州市","南昌市","济南市","郑州市","武汉市","长沙市","广州市","南宁市","重庆市区","成都市","贵阳市","昆明市","西安市","兰州市","西宁市","银川市","乌鲁木齐市"];
var s=GetCityText();
alert(s);
for(i=0;i<=strs.length;i++){
if(strs[i].indexOf(s)!=-1){
document.form1.rsrCitySort[0].checked =true;
break;
}
else
document.form1.rsrCitySort[1].checked =true;
}
}
验证方法就是在
for循环里将i的值alert出来,i会显示从0到匹配项的次数
for(i=0;i<=strs.length;i++){
if(strs[i].toString().indexOf(s)!=-1){
document.form1.rsrCitySort[0].checked =true;
break;
}
else
document.form1.rsrCitySort[1].checked =true;
}
for(i=0;i<=strs.length;i++){
alert(strs[i]);
alert(strs[i].toString().indexOf(s));
if(strs[i].toString().indexOf(s)!=-1){
return true;
break;
}
else continue;
}
return false;
如果不是省会城市,rsrCitySort[1].checked 还是没有被选中啊
把for(i=0;i<=strs.length;i++){ 改成
for(i=0;i<strs.length;i++){ 就行了,呵呵