2011-09-21 92 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" 
} 
}