2013-07-13 87 views
0

我是JS的新手,所以我只是想知道。documentGetElementById无法获取正确的值

我正在试图获得在游戏中要在不同的角色的列表,我已经跟他们等

完成出于这个特别的原因,我需要得到一些复选框的值。我GOOGLE了很多,现在正在拼命寻找帮助。

<input type='checkbox' id='valor_1' value='0' onclick='javascript:toggle();'> 

功能切换()看起来是这样的:

function toggle() 
{ 
    (this.value==1)?this.value=0:this.value=1; 
    alert(this.value); 
} 

出于测试的原因,我惊动了当前值。如果我现在单击该复选框,它会更改值,并在警报窗口中获得正确的返回值。

但是!

如果我在这里使用这个按钮:

<input type='button'' value='Valor_1 Value' onclick='javascript:alert(document.getElementById("valor_1").value);'> 

我总是会得到的返回值0,这是为什么?我能做些什么呢?

回答

0

您在警报按钮的点击得到0值,因为要传递的值设定的复选框即0。为了得到你想要尝试这样的值:

<input type='button'' value='Valor_1 Value' onclick='javascript:toggle(document.getElementById("valor_1"));'> 

function toggle(cb) 
{ 
    (cb.value==1)?cb.value=0:cb.value=1; 
    alert(cb.value); 
} 
+0

哇。这只是让我看到我在一个函数中使用“this”。 :l 那么......现在,当我通过参数,什么复选框切换,但我只需要去像onclick =“javascript:toggle(this)”,使其工作。 非常感谢你^ _^b –

+0

如果你通过这个参数来切换按钮的onClick函数,它将引用按钮而不是复选框,所以这是不可能的。所以请点击接受答案按钮接受此答案。 –