2013-10-16 92 views
-2

這可能嗎?我有一個onClick()方法的按鈕。如果我點擊按鈕,我想模擬TextBox中的鼠標點擊事件。使用焦點()我可以集中在TextBox中,但如何模擬鼠標左鍵單擊?模擬鼠標點擊焦點文本框

編輯我有一個AutoCompleteExtender應該在用戶單擊按鈕後顯示某個文本框中的名稱列表。 TextBox可以同時工作:用戶編寫一個字符並出現列表,或者他點擊該按鈕並出現一個完整的列表。

編輯我用AjaxControlToolkit,並從我的經驗,我對文本框單擊如果我想雖然我對文本框一個FOCIS列表,甚至出現和MinimumPrefixLength = 0

+0

你究竟想要什麼?因爲它看起來像是在創造一個比它應該更大的問題。 –

+0

這是什麼目的? – Reniuz

+0

你有一個鼠標點擊的事件處理程序,你只是想運行該處理程序的內容? –

回答

-1

服務器端:

textBox1_Click(textBox1,new EventArgs()); 

客戶端:

$('textBox1').click(); 

假設

服務器端代碼假設您已經單擊事件處理程序連入控制。

客戶端假設您在頁面上有jQuery,並且您已在控件上使用了靜態客戶端ID,以便jQuery可以找到它。

我會質疑你在這裏嘗試做的動機。你不應該這樣做。如果此答案不符合您的要求,請提供更多上下文。

+0

錯字,我打算調用eventHandler(錯過了'_Click')。 –

+4

對我來說倒是一件好事,我即將被糾正,並學習將來可以使用的東西,但前提是有人提供瞭解釋。會真的很感激之一。 –

2

創建一個「邏輯」的方法,你做你的工作。當用戶點擊文本框時,調用你的邏輯方法。當你想模擬點擊時,也可以調用你的邏輯方法。

// Attach to the event 
myTextBox.Click += new EventHandler(myTextBox_Click); 
// Simulate a "click" event 
MyLogic(); 

protected void myTextBox_Click(object o, EventArgs e) { 
    MyLogic(); 
} 

private void MyLogic() { 
    // Do work 
} 
+1

現身於此建議。 +1當之無愧。我只是建議將MyLogic移動到類,以便它可以獨立進行單元測試。 –