手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

ASP.NET: Custom AutoCompleteTextBox WebControl [With Source Code]

来源:互联网 作者:west263.com 时间:2008-02-22
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

autoCompleteFrame.Attributes.Add("frameborder", "0");
autoCompleteFrame.Attributes.Add("marginheight", "0");
autoCompleteFrame.Attributes.Add("marginwidth", "2");
autoCompleteFrame.Attributes.Add("scrolling", "auto");
autoCompleteFrame.Attributes.Add("width", Width.ToString());
autoCompleteFrame.Attributes.Add("height", "100px");
autoCompleteFrame.Attributes.Add("src", "javascript:''");
autoCompleteFrame.Attributes.Add("onmouseover", string.Format("document.show_{0} = true;", MakeUniqueID(null)));
autoCompleteFrame.Attributes.Add("onmouseout", string.Format("document.show_{0} = false;", MakeUniqueID(null)));

#endregion
}

protected override void OnPreRender(EventArgs e)
{
Register Client Script Block#region Register Client Script Block

if (!Page.ClientScript.IsClientScriptBlockRegistered("__DoAutoComplete"))
{
string script = string.Concat(
"<script language=\"javascript\" type=\"text/javascript\">\r\n",
" var isOpera = navigator.userAgent.indexOf('Opera') > -1;\r\n",
" var isIE = navigator.userAgent.indexOf('MSIE') > 1 && !isOpera;\r\n",
" var isMoz = navigator.userAgent.indexOf('Mozilla/5.') == 0 && !isOpera;\r\n",
"\r\n",
" function textboxSelect (oTextbox, iStart, iEnd)\r\n",
" {\r\n",
" switch(arguments.length) {\r\n",
" case 1:\r\n",
" oTextbox.select();\r\n",
" break;\r\n",
"\r\n",
" case 2:\r\n",
" iEnd = oTextbox.value.length;\r\n",
" /* falls through */\r\n",
" \r\n",
" case 3: \r\n",
" if (isIE) {\r\n",
" var oRange = oTextbox.createTextRange();\r\n",
" oRange.moveStart(\"character\", iStart);\r\n",
" oRange.moveEnd(\"character\", -oTextbox.value.length iEnd); \r\n",
" oRange.select(); \r\n",
" } else if (isMoz){\r\n",
" oTextbox.setSelectionRange(iStart, iEnd);\r\n",
" } \r\n",
" }\r\n",
"\r\n",
" oTextbox.focus();\r\n",
" }\r\n",
"\r\n",
" function textboxReplaceSelect (oTextbox, sText)\r\n",
" {\r\n",
" if (isIE) {\r\n",
" var oRange = document.selection.createRange();\r\n",
" oRange.text = sText;\r\n",
" oRange.collapse(true);\r\n",
" oRange.select(); \r\n",
" } else if (isMoz) {\r\n",
" var iStart = oTextbox.selectionStart;\r\n",
" oTextbox.value = oTextbox.value.substring(0, iStart) sText oTextbox.value.substring(oTextbox.selectionEnd, oTextbox.value.length);\r\n",
" oTextbox.setSelectionRange(iStart sText.length, iStart sText.length);\r\n",
" }\r\n",
"\r\n",
" oTextbox.focus();\r\n",
" }\r\n",
"\r\n",
" function autocompleteMatch (sText, arrValues)\r\n",
" {\r\n",
" var retMatches = \"\"; \r\n",
" \r\n",
" for (var i=0; i < arrValues.length; i )\r\n",
" {\r\n",
" if (arrValues[i].indexOf(sText) == 0)\r\n",
" {\r\n",
" retMatches = arrValues[i] ',';\r\n",
" }\r\n",
" }\r\n",
" \r\n",
" if (retMatches.length > 0)\r\n",
" {\r\n",
" retMatches = retMatches.substr(0, retMatches.length - 1);\r\n",
" } \r\n",
"\r\n",

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!