国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Textbox控件注冊回車事件及觸發按鈕提交事件具體實現

2024-05-06 14:19:25
字體:
來源:轉載
供稿:網友
引子:
在ASP.Net頁面中textbox的index為1(或n),其后的提交按鈕index為2(n+1),光標在textbox中,回車后自動焦點移動到后面的button上,會觸發button的點擊事件。

但在Lyncplus客戶端中訪問Web頁面時遇到了TextBox控件回車自動完成按鈕的提交事件失效的情況(應該是自動切換焦點)。

由于并且該服務端TextBox控件沒有提供OnKeyPress或OnKeyDown等事件,也無法針對回車事件寫后臺代碼來調用Button按鈕的點擊事件。

于是上網查找相關的介紹,最終解決了以下兩個問題:
(一)、實現在TextBox控件回車事件中 執行JS代碼,來控制頁面元素的值。
(二)、實現在TextBox控件回車事件中 調用服務端控件的點擊事件,來執行服務端C#代碼,實現相關的功能。
具體實現如下:
一、注冊和觸發服務端TextBox控件回車事件
1.PageLoad事件代碼:
代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
MessageTxt.Attributes.Add("onkeypress", "EnterTextBox()");
MessageTxt.Attributes.Add("onkeydown", "EnterTextBox()");
}

2.javascript代碼:
代碼如下:
<script language="javascript">
function EnterTextBox() {
if (event.keyCode == 13 && document.all["MessageTxt"].value != "") //按下了回車,并且文本框里有值
{
$("#<%=hidKeywords.ClientID%>").val($("#<%=MessageTxt.ClientID%>").val().replace(/[^/u0000-/u00FF]/g,
function ($0) {
return escape($0).replace(/(%u)(/w{4})/gi, "&#x$2;")
}));
}
}
</script>

二、TextBox控件回車事件中調用服務端Button控件點擊事件
1.PageLoad事件代碼: 同上。
代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
MessageTxt.Attributes.Add("onkeypress", "EnterTextBox()");
MessageTxt.Attributes.Add("onkeydown", "EnterTextBox()");
}

2.javascript代碼: 注意使用原始的dom對象獲取按鈕,使用Jquery獲取不到。
代碼如下:
<script language="javascript">
function EnterTextBox() {
var button = document.getElementById('<%=btnSearch.ClientID%>');//獲取服務端控件對應的頁面對象
if (event.keyCode == 13) //按下了回車
{
  button.click();
event.returnValue = false;
}
} </script>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 社会| 孝义市| 斗六市| 巴中市| 汤阴县| 盐城市| 宁明县| 肥东县| 遂平县| 肥东县| 胶南市| 舒兰市| 黄骅市| 伊川县| 博罗县| 榆林市| 德阳市| 卓资县| 怀仁县| 徐水县| 都江堰市| 乐东| 西丰县| 津市市| 鄯善县| 荣昌县| 武穴市| 土默特右旗| 宣恩县| 奎屯市| 芜湖市| 云和县| 响水县| 双鸭山市| 葫芦岛市| 阜平县| 高邮市| 吴川市| 珲春市| 边坝县| 法库县|