Javascript 是否可以将onmouseover(evt)与if条件结合起来?

Javascript 是否可以将onmouseover(evt)与if条件结合起来?,javascript,javascript-events,Javascript,Javascript Events,我有一个小地图,我想在上面分别显示两个不同的信息类别。我在代码中添加了两个单选按钮,允许用户选择其中一个类别名称,当用户将鼠标移动到地图上时,应显示与特定单选按钮相关的信息。我下面的代码仅适用于第一个单选按钮,当我再次选择第二个单选按钮时,将显示第一个信息!你能帮我吗?我该怎么办?同时,我的代码的结构可以工作,但我不能在这里编写所有代码 这是我的密码: 信息存储在以下矩阵中: var myCantons = []; myCantons[0]=[name,year,population,densi

我有一个小地图,我想在上面分别显示两个不同的信息类别。我在代码中添加了两个单选按钮,允许用户选择其中一个类别名称,当用户将鼠标移动到地图上时,应显示与特定单选按钮相关的信息。我下面的代码仅适用于第一个单选按钮,当我再次选择第二个单选按钮时,将显示第一个信息!你能帮我吗?我该怎么办?同时,我的代码的结构可以工作,但我不能在这里编写所有代码

这是我的密码: 信息存储在以下矩阵中:

var myCantons = [];
myCantons[0]=[name,year,population,density,year,population,density];
myCantons[1]=[x,1982,1200000,1.2,1992,300000,1.8];
myCantons[2]=[y,1982,5000000,4,1992,390000,4.6];
单选按钮包括:

<form action="">
   <input type="radio" name="againcies" value="SP" 
     "onchange="myShowValues(myEvent)"/>
   <input type="radio" name="againcies" value="Moody"            
     "onchange="myShowValues(myEvent)"/>
该地图包含许多多边形,这些多边形位于一组中,如下所示:

<g id="myCantons" fill="#A0C544" stroke="#FFFFFF" onmouseover="myShowValues(evt,dataset)">

我前面提到的问题是在if条件部分,它只能调用第一个单选按钮,我不能应用第二个按钮的if条件,你们知道吗?
thx

尝试这样做:

<input type="radio" name="againcies" value="SP" 
 onchange="changeDataset(1)"/>
<input type="radio" name="againcies" value="Moody"            
 onchange="changeDataset(2)"/>
var dataset = 1; // default value
function changeDataset(newval) {
   dataset = newval;
   // plus whatever else you need to do here
   // maybe myShowValues(); ???
}

function myShowValues(){
  if(dataset == 1){
     document.getElementById('myLegCantName').firstChild.data =  myCantons[Id][0];
     document.getElementById('year').firstChild.data = myCantons[Id][1];
     document.getElementById('myLegCantVal').firstChild.data =(myCantons[Id][2]);
     document.getElementById('myLegCantVal2').firstChild.data =(myCantons[Id][3]);
  } else {
     document.getElementById('myLegCantName').firstChild.data = myCantons[Id][0]      
     document.getElementById('myLegCantRate').firstChild.data = myCantons[Id][4];
     document.getElementById('myLegCantVal').firstChild.data =(myCantons[Id][5]);                      
     document.getElementById('myLegCantVal2').firstChild.data =(myCantons[myScrId][6]);
  }
}
有几件事需要注意。。这不是有效的HTML:

"onchange="myShowValues(myEvent)"

引用太多…

我看不出您在哪里更改
数据集
变量…但是如果您更改它,这将很好地工作,伙计,这是我的问题之一!我的代码无法更改数据集。我将dataset定义为一般变量,我将var dataset=1;2.在函数之外。wowwwww!伟大的thx buddy function changedataset解决了我的问题!!许多thx pal
var dataset = 1; // default value
function changeDataset(newval) {
   dataset = newval;
   // plus whatever else you need to do here
   // maybe myShowValues(); ???
}

function myShowValues(){
  if(dataset == 1){
     document.getElementById('myLegCantName').firstChild.data =  myCantons[Id][0];
     document.getElementById('year').firstChild.data = myCantons[Id][1];
     document.getElementById('myLegCantVal').firstChild.data =(myCantons[Id][2]);
     document.getElementById('myLegCantVal2').firstChild.data =(myCantons[Id][3]);
  } else {
     document.getElementById('myLegCantName').firstChild.data = myCantons[Id][0]      
     document.getElementById('myLegCantRate').firstChild.data = myCantons[Id][4];
     document.getElementById('myLegCantVal').firstChild.data =(myCantons[Id][5]);                      
     document.getElementById('myLegCantVal2').firstChild.data =(myCantons[myScrId][6]);
  }
}
"onchange="myShowValues(myEvent)"