2011-09-30 118 views
0

對不起,這個問題再次打擾你。可以捕獲texbox點擊事件嗎?

我從詹姆斯 - 約翰遜接受了實際上並沒有因爲工作的解決方案,它可以防止我進入任何數據到這是不是我們想要的文本框中。

我們想diplays的消息只是一個幫助信息。換句話說,我們只是建議用戶在他/她希望收到電子郵件時勾選複選框。

下面是我想出了基於來自Rob參考HEL。 這有效。我希望得到您的幫助的唯一幫助就是讓信息在新窗口中打開。我正在使用的示例消息是Focus Fire。

你能幫忙嗎?

這是最新的代碼:

<head> 
<style type="text/css">span id='1' {display:none;}</style> 
<script type="text/javascript" src="jqueryMsg.js"></script> 
</head> 
<asp:TextBox ID="chck1" runat="server" Width="75px"></asp:TextBox> 
<span id='1'>focus fire</span> 
<script type="text/javascript">window.onload = (function() { 
try{ $("input:text").focus(function() {    
$(this).next("span").css('display','inline').fadeOut(1000); });    
}catch(e){}});</script> 
+0

。你有什麼嘗試? –

+2

你說第一「能否在texbox將鼠標懸停在此?」然後後來問「只要用戶**點擊文本框上的**」,這是什麼?有一堆事件:onClick,onHover,onFocus ... – Chad

+0

嗨乍得,我很抱歉,因爲我可能混淆了事情。我們希望能夠在用戶點擊文本框輸入文本時立即給用戶一個指令。 –

回答

0

你可以換一個SPAN文本框和onmouseover事件添加到跨度。

<span onmouseover="alert('This is a TextBox');"><asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></span> 
+0

嗨詹姆斯,你的解決方案是迄今爲止最有前途的,只是因爲它的易用性。我試圖設計它以接近複選框。它離文本框太遠了。謝謝 –

0

一種方法是給它的頁面加載事件中添加代碼隱藏的,如:

instruct.Attributes.Add(「點擊」,「yourJavascriptFunction ();「)

其原因在頁面加載事件被添加的屬性被回發期間丟失增加。

1

ClientIDMode -attribute添加到您的文本框,使JavaScript可以通過ID訪問它不與ctrwhateverstrangeidaspnetproduces擺弄:

<asp:TextBox ID="instruct" runat="server" Width="75px" ClientIDMode="static"> 

然後處理Click事件(本例中使用jQuery,你可以使用原始的JavaScript爲好):

$(document).ready(function() { 
    $('#instruct').click(function() { 
     alert('.click()-handler called.'); 
    }); 
}); 
+0

非常感謝丹尼斯。在這一行上,alert('。click() - 處理程序調用。');這是我在這裏把結構放在像「如果你希望收到確認請在右邊的複選框嗎?我很新的JavaScript。 –

+0

是的,警報功能可以被任何JavaScript代碼取代。只要它在函數內部,只要控件被點擊,它就會被執行。 –

0

查找到用於JavaScript中的onfocus()的事件處理程序,其集中於所希望的文本框時將執行一個提供的函數,因爲這種方法會如果用戶點擊或製表符工作日所需的文本框。

或者你可以在jQuery中使用focus()

$('#instruct').focus(function(){ 
    // Insert desired response here 
    alert('Your instructions'); 
}); 
+0

謝謝Rob,我們寧願它沒有焦點。原因是我們只是簡單地使用指令,而不是驗證任何事情。 –

0

或者你可以使用onfocus事件,而不是(在情況下,用戶選項卡textarea的,而不是點擊它,我假設你想顯示你的消息,那麼也一樣):

$('textarea').focus(function(){ 
    alert('hi'); 
}): 
其可能性爲
+0

謝謝亞歷克斯。唯一令人困惑的是,這是否我需要做更多? –

+0

謝謝大家的時間和難以置信的幫助。我能理解的唯一方法就是詹姆斯約翰遜。再次感謝專家的幫助。 –

相關問題