我改了一下 <script> function abc(){ var navarr=document.getElementById("nav1").childNodes; for(var i=0;i<navarr.length;i++){ if(navarr[i].selected=="selected"){ switch(navarr[i].nodeValue) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default break; } document.getElementById("nav2").childNodes[0].nodeValue=tem; } } }</script> 但是还是有问题
function abc(){ var nav1arr=document.getElementById("nav1"); for(var i=0;i <nav1arr.length;i++){ if(nav1arr[i].selected==true){ var tem = 0; switch(parseInt(nav1arr[i].text)) { case 1: tem=0; break; case 2: tem=1; break; case 3: tem=2; break; default: break; } document.getElementById("nav2").selectedIndex=tem; } } } </script> <select id="nav1" name="" onchange="abc();"> <option>1 </option> <option>2 </option> <option>3 </option> <option> </option> </select> <select id="nav2" name=""> <option>a </option> <option>b </option> <option>c </option> <option> </option> </select>
朋友的可以,不过朋友个解释一下我的这个函数中的错误,谢谢了,刚学function abc(){ var navarr=document.getElementById("nav1").childNodes; for(var i=0;i<navarr.length;i++){ if(navarr[i].selected==true){ switch(navarr[i].nodeValue) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default break; } document.getElementById("nav2").childNodes[0].nodeValue=tem; } } }
<script type="text/javascript"> function abc(){ var index=document.getElementById("nav1").selectedIndex; var nav1arr=document.getElementById("nav1").options[index].text; var tem=0; switch(nav1arr) { case "1": tem=0; break; case "2": tem=1; break; case "3": tem=2; break; default: break; } alert(tem); document.getElementById("nav2").selectedIndex=tem; } </script> <select id="nav1" name="nav1" onchange="abc();"> <option value="1">1 </option> <option value="2">2 </option> <option value="3">3 </option> </select> <select id="nav2" name="nav2"> <option>a </option> <option>b </option> <option>c </option> </select>
我不是根据value判断,而是根据option中的文本,是不是应该用nodeValue; function abc(){ var navarr=document.getElementById("nav1").childNodes; for(var i=0;i <navarr.length;i++){ if(navarr[i].selected==true){ switch(navarr[i].nodeValue) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default break; } document.getElementById("nav2").childNodes[0].nodeValue=tem; } } } 不知道这样写是哪里错了,是语法错误,还是
function abc(){ var nav1arr=document.getElementById("nav1").childNodes; for(var i=0;i <nav1arr.length;i++){ if(nav1arr[i].selected==true){ switch(nav1arr[i].value) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default break; } document.getElementById("nav2").childNodes[0].value=tem; } } } </script> <select id="nav1" name="" onchange="abc();"> <option value="1">1 </option> <option value="2">2 </option> <option value="3">3 </option> <option> </option> </select> <select id="nav2" name=""> <option>a </option> <option>b </option> <option>c </option> <option> </option> </select>
function abc(){ var navarr=document.getElementById("nav1").childNodes; for(var i=0;i<navarr.length;i++){ if(navarr[i].selected==true){ switch(navarr[i].text) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default break; } document.getElementById("nav2").childNodes[0].text=tem; } } }这是我又改的,抱歉,刚学,有些还很弧度 请问这里 1,document.getElementById("nav2").childNodes[0].text表示第二个select的option[0]的文本有错误吗, 2,是不是不能用nodeValue而要用text
function abc(){ var navarr=document.getElementById("nav1").options; for(var i=0;i<navarr.length;i++){ if(navarr[i].selected==true){ switch(parseInt(navarr[i].text)) { case 1: var tem="a"; break; case 2: var tem="b"; break; case 3: var tem="c"; break; default: break; } document.getElementById("nav2").options[0].text=tem; } } } 终于改对了,哎,看来还要在努力啊,谢谢兄弟们了 最好一个问题 parseInt(navarr[i].text))这里一定要用parseInt吗,为什么呢
<script>
function abc(){
var navarr=document.getElementById("nav1").childNodes;
for(var i=0;i<navarr.length;i++){
if(navarr[i].selected=="selected"){
switch(navarr[i].nodeValue)
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default
break;
}
document.getElementById("nav2").childNodes[0].nodeValue=tem;
}
}
}</script>
但是还是有问题
function abc(){
var nav1arr=document.getElementById("nav1");
for(var i=0;i <nav1arr.length;i++){
if(nav1arr[i].selected==true){
var tem = 0;
switch(parseInt(nav1arr[i].text))
{
case 1:
tem=0;
break;
case 2:
tem=1;
break;
case 3:
tem=2;
break;
default:
break;
}
document.getElementById("nav2").selectedIndex=tem;
}
}
}
</script>
<select id="nav1" name="" onchange="abc();">
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option> </option>
</select>
<select id="nav2" name="">
<option>a </option>
<option>b </option>
<option>c </option>
<option> </option>
</select>
var navarr=document.getElementById("nav1").childNodes;
for(var i=0;i<navarr.length;i++){
if(navarr[i].selected==true){
switch(navarr[i].nodeValue)
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default
break;
}
document.getElementById("nav2").childNodes[0].nodeValue=tem;
}
}
}
function abc(){
var index=document.getElementById("nav1").selectedIndex;
var nav1arr=document.getElementById("nav1").options[index].text;
var tem=0;
switch(nav1arr)
{
case "1":
tem=0;
break;
case "2":
tem=1;
break;
case "3":
tem=2;
break;
default:
break;
}
alert(tem);
document.getElementById("nav2").selectedIndex=tem; } </script>
<select id="nav1" name="nav1" onchange="abc();">
<option value="1">1 </option>
<option value="2">2 </option>
<option value="3">3 </option>
</select>
<select id="nav2" name="nav2">
<option>a </option>
<option>b </option>
<option>c </option>
</select>
function abc(){
var navarr=document.getElementById("nav1").childNodes;
for(var i=0;i <navarr.length;i++){
if(navarr[i].selected==true){
switch(navarr[i].nodeValue)
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default
break;
}
document.getElementById("nav2").childNodes[0].nodeValue=tem;
}
}
}
不知道这样写是哪里错了,是语法错误,还是
var nav1arr=document.getElementById("nav1").childNodes;
for(var i=0;i <nav1arr.length;i++){
if(nav1arr[i].selected==true){
switch(nav1arr[i].value)
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default
break;
}
document.getElementById("nav2").childNodes[0].value=tem;
}
}
} </script>
<select id="nav1" name="" onchange="abc();">
<option value="1">1 </option>
<option value="2">2 </option>
<option value="3">3 </option>
<option> </option>
</select>
<select id="nav2" name="">
<option>a </option>
<option>b </option>
<option>c </option>
<option> </option>
</select>
var navarr=document.getElementById("nav1").childNodes;
for(var i=0;i<navarr.length;i++){
if(navarr[i].selected==true){
switch(navarr[i].text)
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default
break;
}
document.getElementById("nav2").childNodes[0].text=tem;
}
}
}这是我又改的,抱歉,刚学,有些还很弧度
请问这里
1,document.getElementById("nav2").childNodes[0].text表示第二个select的option[0]的文本有错误吗,
2,是不是不能用nodeValue而要用text
<select id="nav2" name="">
<option> </option>
</select>我是要通过nav1来更新<option> </option>中的文本信息。不好意思
var navarr=document.getElementById("nav1").options;
for(var i=0;i<navarr.length;i++){
if(navarr[i].selected==true){
switch(parseInt(navarr[i].text))
{
case 1:
var tem="a";
break;
case 2:
var tem="b";
break;
case 3:
var tem="c";
break;
default:
break;
}
document.getElementById("nav2").options[0].text=tem;
}
}
}
终于改对了,哎,看来还要在努力啊,谢谢兄弟们了
最好一个问题
parseInt(navarr[i].text))这里一定要用parseInt吗,为什么呢