2014-08-27 73 views
1

下面是我的例程。我需要同時做兩個onblur函數。下面的代碼在單個onblur時確切工作。我如何修改我的代碼來實現這兩個功能。相同輸入ID的兩個onblur

HTML編碼:

<input type="text" name="frmEmail" id="frmEmail" class="textbox" value="Email Address" onfocus="if(this.value =='Email Address'){this.value=''}" onblur="if(this.value==''){this.value='Email Address'}" /> 

JavaScript編碼:

function checkEmpty() 
{ 
    count=0; 
    if(document.getElementById('frmEmail').value=="Email Address") { 
     document.getElementById('frmEmail').style.backgroundColor = '#f6a9ae'; 
     count++; 
    } else { 
     document.getElementById('frmEmail').style.backgroundColor = ''; 
    } 

    if(count!=0) { 
     return false; 
    } else { 
     return true; 
    } 
} 
+0

有什麼這個問題做CSS?爲什麼你返回一個布爾值到位空間? – Teemu 2014-08-27 15:57:33

+0

「平均時間」是什麼意思? – 2014-08-27 15:58:53

+0

那是同一時間的兄弟:) – 2014-08-27 15:59:52

回答

2

創建一個 '父' 函數來調用子程序。

<input ... onblur="myparent();">

function myparent(){ 
    dothis(); 
    dothat(); 
} 

更好的解決方案是創建一個偵聽的情況下,而不是粘的處理程序內聯,如

jQuery的方法:

<input id="myel"> 
$(function(){ 
$("#myel").blur(function() { 
    dothis(); 
    dothat(); 
}); 
}); 

或者,非純j的非jQuery需要的方式:

<input id="myel"> 

var myel = document.getElementById("myel"); 
myel.onblur = function() { 
    dothis(); 
    dothat(); 
} 
+0

對不起,兄弟,它不工作不夠好.. :( – 2014-08-27 16:13:11

+1

您是否使用jquery庫嗎?上面的第二個語法需要它。 – briansol 2014-08-27 16:15:48

+0

沒有兄弟,我不...我需要做的JavaScript不是在jQuery .. – 2014-08-28 04:47:29

1

使用這個代碼

<input type="text" name="frmEmail" id="frmEmail" class="textbox" value="Email Address" 
    onfocus="if(this.value =='Email Address'){this.value=''; this.style.backgroundColor = '#fff';}" 
    onblur="if(this.value==''){this.value='Email Address'} checkEmpty()" /> 
+0

部分作品兄弟..但背景顏色沒有改變,而我按Tab鍵.. – 2014-08-28 05:08:37

相關問題