2011-09-21 89 views
2

我需要一个JavaScript函数来调用某个按钮点击,当点击按钮名称将会改变。 即JavaScript改变按钮文本

<input type=button id = button1 value=boy onclick=function(boy,girl)> 

我需要的javascript函数采取2个参数,并检查按钮的值是第一放慢参数,则该值将成为第二,反之亦然。

所以,如果我按下按钮,它说男孩,它会成为女孩 ,如果我按下按钮,它说女孩它会成为男孩! 请使用JavaScript请thx。

回答

2

有很多方法可以做到这一点,但通过getById功能显示下面你将有一个便携功能通过id来访问DOM元素:

<html> 
    <script type="text/javascript"> 

     function getById(a) { 
      if (document.getElementById && document.getElementById(a)) { 
       return document.getElementById(a) 
      } else { 
       if (document.all && document.all(a)) { 
       return document.all(a) 
       } else { 
       if (document.layers && document.layers[a]) { 
        return document.layers[a] 
       } else { 
        return false 
       } 
       } 
      } 
     } 
     function myfunc() 
     { 
     getById("button1").value =(getById("button1").value=="boy")?"girl":"boy"; 
     } 
    </script> 
<head> 
</head> 
<input type="button" value="boy" id="button1" onclick="myfunc();" /> 
</html> 
3

在这里看到:http://jsfiddle.net/w9ed8/

或:

<input type=button id = button1 value=boy onclick="changeMe(this)"> 

<script> 
function changeMe(obj){ 
    if(obj.value == "boy"){ 
    obj.value = "girl" 
    }else{ 
    obj.value = "boy" 
    } 
} 
</script> 

或者

<input type=button id = button1 value=boy onclick="changeMe(this, 'boy' , 'girl')"> 

<script> 
function changeMe(obj , param1 , param2){ 
    if(obj.value == param1){ 
    obj.value = param2 
    }else{ 
    obj.value = param1 
    } 
} 
</script> 
+0

只工作了男孩和女孩和功能是不是按问:)工作,他要求一个函数,将计算至少2个参数:) – walialu

+0

嗯,我想提前,我知道他要求2个参数,但它没有必要...( - : – fatnjazzy

+0

@walialu : - 你和fatnjazzy的答案有什么区别.. – Pranav

3
var foo = function(a,b,c){ 
    if(a.value==b){ 
    a.value=c; 
    } 
    else{ 
    a.value=b; 
    } 
}; 

和按钮

<input type="button" id="button1" value="boy" onclick="foo(this,"boy","girl")"> 
2
<input type=button id=button1 value=boy onclick='test(this,boy,girl)'> 
<script> 
     function test(Sender,boy,girl){ 
     Sender.value = Sender.value == boy ? girl : boy; 
     } 
</script> 
1
function change() 
{ 
if((document.getElementById("button1").value)=="Boy") 
{ 
    document.getElementById("button1").value="Girl" 
} 
else 
{ 
    document.getElementById("button1").value="Boy" 
} 
}