2013-10-29 36 views
2

我有一個標準的輸入類型文本字段,當它被更改時應該觸發一個Javascript。首先,我試圖改變,但它沒有做任何事情。然後我嘗試了Blur,但也沒有做任何事情。onBlur和onChange都不能使用<input type =「text」

HTML代碼:

<input type="text" size="1" class="inputbox" onblur="c();" name="qty" value="1" /> 

JavaScript的不應該是問題,因爲我這個觸發另一個選擇下拉菜單,以及有它工作正常!就在這個文本領域,它似乎不工作。不管怎麼說,這裏的Javascript代碼:

function c() { 
$('#add4').fadeOut(function(){ 
     $('#add5').css('visibility', 'visible'); 
     document.u.submit(); 
}); 
} 

我在網上查,但找不到這方面不得以任何有關職位或提示。任何想法有什麼不對?

+2

刪除內聯事件處理程序,並使用適當的事件處理程序,它可能會工作,因爲我瘋狂地猜測你把c()函數放在文檔準備好的或其他奇怪的東西里面。 – adeneo

+0

@adeneo,你應該讓你的評論一個答案。 – Ishmael

+0

控制檯中是否有錯誤? – epascarello

回答

3

試試這個

<form> 
<input id="target" type="text" value="Field 1"> 
<input type="text" value="Field 2"> 
</form> 
<div id="other"> 
Trigger the handler 
</div> 
The event handler can be bound to the first input field: 
$("#target").blur(function() { 
alert("Handler for .blur() called."); 
}); 

檢查該鏈接,供您參考http://api.jquery.com/blur/

http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_event_blur_alert

希望這有助於

+0

謝謝magExp!我看到上面的評論解釋了同樣的方法,但這個人本可以更友好。無論如何,我重寫了一個處理程序,現在它工作正常。仍然奇怪,內聯不會。 :/ – koljanep

-1

這可能會解決你的問題:

<input type="text" size="1" class="inputbox" onblur=" javascript:c(); " name="qty" value="1" /> 
相關問題