asp.net自定義控件中注冊(cè)Javascript問題解決方案
更新時(shí)間:2014年05月15日 16:48:50 作者:
這篇文章主要介紹了asp.net自定義控件中注冊(cè)Javascript的問題,需要的朋友可以參考下
復(fù)制代碼 代碼如下:
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
RenderJS();
}
private void RenderJS()
{
if (!Page.ClientScript.IsClientScriptBlockRegistered(SCRIPT_ID))//如果還沒有注冊(cè)語句,則注冊(cè)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(),SCRIPT_ID,SCRIPT_CONTENT);
}
}
private const string SCRIPT_ID = "5B7A061B93D546A7A2601D56A8738DB9";//自定義標(biāo)識(shí)Guid
private const string SCRIPT_CONTENT = "<script type=\"text/javascript\">\nvar CB4949501DA_checkDouble = function (data) {\nvar key = event.keyCode;\nif ((key < 48 || key > 57) && key != 46 && key != 45) {\nreturn false;\n}\nelse {\nif (key == 46) {\nif (data.indexOf(\".\") != -1 || data.length == 0)\nreturn false;\n}\nelse if (key == 45) {\nif (data.indexOf(\"-\") != -1 || data.length != 0) {\nreturn false;\n}\n}\n}\nreturn true;\n}\nvar CB4949501DA_checkInt = function (data) {\nvar key = event.keyCode;\n\nif ((key < 48 || key > 57) && key != 45) {\nreturn false;\n}\nelse {\nif (key == 45) {\nif (data.indexOf(\"-\") != -1 || data.length != 0) {\nreturn false;\n}\n}\nelse {\nvar input = String.fromCharCode(key)\nvar intData = parseInt(data + input);\nif (intData > 2147483647 || intData < -2147483648) {\nreturn false;\n}\n}\nreturn true;\n}\nreturn true;\n}\nvar <span style="color:#ff0000;">CB4949501DA_checkLong </span>= function (data) {\nvar key = event.keyCode;\n\nif ((key < 48 || key > 57) && key != 45) {\nreturn false;\n}\nelse {\nif (key == 45) {\nif (data.indexOf(\"-\") != -1 || data.length != 0) {\nreturn false;\n}\n}\nelse {\nvar input = String.fromCharCode(key)\nvar longstrData = data + input\nif (longstrData.length > 19) {\nreturn false;\n}\n}\n}\nreturn true;\n}\n</script>\n";
再添加代碼去調(diào)用寫入的javascript函數(shù):
復(fù)制代碼 代碼如下:
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
{
base.AddAttributesToRender(writer);
writer.AddAttribute("onkeypress", "return <span style="color:#ff0000;">CB4949501DA_checkLong</span>(this.value);");}
另外,引用文件是這樣的。
復(fù)制代碼 代碼如下:
if (!Page.ClientScript.IsClientScriptIncludeRegistered("引用js文件1"))//如果還沒有引用,則引用
{
Page.ClientScript.RegisterClientScriptInclude("引用js文件1", "JS/MYJS.JS");
}
生成的頁面查看源代碼效果如下:
復(fù)制代碼 代碼如下:
<script src="JS/MYJS.JS" type="text/javascript"></script>
<script type="text/javascript">
var CB4949501DA_checkDouble = function (data) {
var key = event.keyCode;
if ((key < 48 || key > 57) && key != 46 && key != 45) {
return false;
}
else {
if (key == 46) {
if (data.indexOf(".") != -1 || data.length == 0)
return false;
}
else if (key == 45) {
if (data.indexOf("-") != -1 || data.length != 0) {
return false;
}
}
}
return true;
}
var CB4949501DA_checkInt = function (data) {
var key = event.keyCode;
if ((key < 48 || key > 57) && key != 45) {
return false;
}
else {
if (key == 45) {
if (data.indexOf("-") != -1 || data.length != 0) {
return false;
}
}
else {
var input = String.fromCharCode(key)
var intData = parseInt(data + input);
if (intData > 2147483647 || intData < -2147483648) {
return false;
}
}
return true;
}
return true;
}
var CB4949501DA_checkLong = function (data) {
var key = event.keyCode;
if ((key < 48 || key > 57) && key != 45) {
return false;
}
else {
if (key == 45) {
if (data.indexOf("-") != -1 || data.length != 0) {
return false;
}
}
else {
var input = String.fromCharCode(key)
var longstrData = data + input
if (longstrData.length > 19) {
return false;
}
}
}
return true;
}
</script>
您可能感興趣的文章:
- asp.net自定義控件代碼學(xué)習(xí)筆記
- asp.net 自定義控件實(shí)現(xiàn)無刷新上傳圖片,立即顯示縮略圖,保存圖片縮略圖
- Asp.net 動(dòng)態(tài)加載用戶自定義控件,并轉(zhuǎn)換成HTML代碼
- asp.net DropDownList自定義控件,讓你的分類更清晰
- asp.net中使用自定義控件的方式實(shí)現(xiàn)一個(gè)分頁控件的代碼
- asp.net自定義控件回發(fā)數(shù)據(jù)實(shí)現(xiàn)方案與代碼
- Asp.net清空控件值的方法(可自定義控件類型)
- 淺談ASP.NET中最簡(jiǎn)單的自定義控件
- asp.net動(dòng)態(tài)加載自定義控件的方法
- Asp.net自定義控件之加載層
相關(guān)文章
利用IIS調(diào)試ASP.NET網(wǎng)站程序的完整步驟
這篇文章主要給大家介紹了關(guān)于利用IIS調(diào)試ASP.NET網(wǎng)站程序的完整步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11asp.net中button控制先執(zhí)行js再執(zhí)行后臺(tái)程序的方法
這篇文章主要介紹了asp.net中button控制先執(zhí)行js再執(zhí)行后臺(tái)程序的方法,涉及button控件與js的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01Asp.Mvc?2.0用戶客戶端驗(yàn)證實(shí)例講解(3)
這篇文章主要介紹了Asp.Mvc?2.0實(shí)現(xiàn)客戶端驗(yàn)證功能,本文使用jquery.validate插件進(jìn)行驗(yàn)證,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08ASP.NET2.0服務(wù)器控件之類型轉(zhuǎn)換器
ASP.NET2.0服務(wù)器控件之類型轉(zhuǎn)換器...2006-09-09基于?.NET?6?的ASP.NET?Core啟動(dòng)地址配置方法及優(yōu)先級(jí)順序
這篇文章主要介紹了ASP.NET?Core啟動(dòng)地址配置方法及優(yōu)先級(jí)順序,?.NET?6?使用了最小?WEB?API,?配置方式已經(jīng)部分發(fā)生了變化,下面文章我們來看看具體的方法,需要的小伙伴可以參考一下2022-03-03asp.net微信開發(fā)(高級(jí)群發(fā)圖文)
這篇文章主要介紹了asp.net微信開發(fā)中有關(guān)高級(jí)群發(fā)圖文的相關(guān)內(nèi)容,需要的朋友可以參考下2015-11-11asp.net fileupload控件上傳圖片并預(yù)覽圖片
這篇文章主要介紹了asp.net fileupload控件上傳圖片后并進(jìn)行預(yù)覽圖片的功能,需要的朋友可以參考下2015-11-11asp.net 不用組件的URL重寫(適用于較大型項(xiàng)目)
網(wǎng)上很多關(guān)于url重寫的教程都推薦下載某某某組件, 我個(gè)人不喜歡這樣,即使是M$的組件也一樣,因?yàn)槲覀兏沙绦騿T的,越貼近真相越好。那么我也寫一個(gè)關(guān)于url重寫的文章,希望對(duì)和我一樣有個(gè)性的coder們有點(diǎn)幫助。2009-04-04