c# asp.net 如何在js文件中使用服务器变量,总结ASP.NET C#中经常用到的13个JS脚本代码...

在C#开发过程中,免不了写一些JS,其实做后端开发的,本身不擅长写JS,干脆总结一下,方便自己也方便别人,分享给大家。呵呵~~

1.按钮前后台事件

复制代码代码如下:

OnClientClick="alert('客房端验证,阻止向服务器端提交');return false;" />

2.注册相关事件:onblur,onclick,onchange

复制代码代码如下:

this.TextBox1.Attributes.Add("onchange",

"alert('数据被改动,现检查输入是否符合规则');");

3.注册相关属性:

复制代码代码如下:

this.TextBox1.Attributes.Add("readOnly", "true");

4.引入JS文件

前台HTML页面:

复制代码代码如下:

function fn_Name()

{

alert("JS");

}

后台cs页面:

复制代码代码如下:

this.RegisterClientScriptBlock("jsFile",

"");

[code]

5.点击按钮时 相关栏位 非空判断

[code]

function checkEmpty(txtObj,msgShow)

{

if(txtObj.value == "")

{

alert(msgShow);

return false;

}

}

OnClientClick="return checkEmpty(TextBox1,'TextBox1 不能为空')" />

6.通过ChcekBox的是否点选来控制其相对应的TextBox 是否可输入

复制代码代码如下:

function chkTextBox(chkObj,txtObj)

{

if(chkObj.checked==true)

{

txtObj.value = "";

txtObj.readOnly = false;

txtObj.focus();

}

if(chkObj.checked == false)

{

txtObj.value = "";

txtObj.readOnly = true;

}

}

7.传值到模态窗口 并得到传回的值

复制代码代码如下:

var EnCodeQueryName = escape(Name);

var strPara = "'dialogWidth: 400px;dialogHeight: 400px;dialogLeft: 300px;dialogTop: 200px;toolbar: no;menubar: no;resizable: yes;location: no;status: no;scrollbars= no'";

var ReturnInfo = window.showModalDialog("QryName.aspx?&Name="+EnCodeQueryName +"&QueryID="+QueryType+"",'',strPara);

if(ReturnInfo !=null)

{

var arrayReturnInfo = ReturnInfo .split("@");

document.all.drpID.value = arrayReturnInfo[1];

document.all.txtName.value= arrayReturnInfo[2];

}

8.弹出JS的确认对话框,并根据确认结果 触发后台相关操作

复制代码代码如下:

if(confirm('确认如何吗?'))

{

document.all.hidbtn_Submit.click();

}

else

{

document.all.hidbtn_Cancel.click();

}

HTML页面相关代码:

复制代码代码如下:

style="display:none;"

onserverclick="hidbtn_Submit_ServerClick"

runat="server" />

9.添加页面对快捷键的响应,如 按F2时 进行新增按钮的操作等

复制代码代码如下:

#region 添加页面对快捷键的响应

string strJS_ShortKey = "

strJS_ShortKey += " document.οnkeydοwn=shortKeyDown; ";

strJS_ShortKey += " function shortKeyDown()  ";

strJS_ShortKey += " { ";

// 新增

if (this.ButtonCtl1.ImgBtn_AddFamily.Visible)

{

string btnInsertCID = this.ButtonCtl1.ImgBtn_Insert.ClientID.Trim();

//F2 - 113

strJS_ShortKey += " if(event.keyCode=='113') ";

strJS_ShortKey += "  { ";

strJS_ShortKey += "    document.all('" + btnInsertCID + "').click();";

strJS_ShortKey += "    event.keyCode= 0; ";

strJS_ShortKey += "    event.returnValue = false; ";

strJS_ShortKey += "    return false; ";

strJS_ShortKey += "  } ";

}

// 修改

if (this.ButtonCtl1.ImgBtn_Edit.Visible)

{

string btnEditCID = this.ButtonCtl1.ImgBtn_Edit.ClientID.Trim();

//F3 - 114

strJS_ShortKey += " if(event.keyCode=='114') ";

strJS_ShortKey += "  { ";

strJS_ShortKey += "    document.all('" + btnEditCID + "').click();";

strJS_ShortKey += "    event.keyCode= 0; ";

strJS_ShortKey += "    event.returnValue = false; ";

strJS_ShortKey += "    return false; ";

strJS_ShortKey += "  } ";

}

strJS_ShortKey += " } ";

//注册事件

Page.RegisterStartupScript("shortKey", strJS_ShortKey);

#endregion

10.弹出的提示 分行显示

复制代码代码如下:

alert('aaa \r\n bbb \r\n ccc');

如果是在后台.cs文件中注册

则需要

复制代码代码如下:

string strAlertContent = "aaa"+" \\r\\n ";

strAlertContent += "bbb" +" \\r\\n ";

11.点击GridView上的某一行时,行首列处的RadioButton处于选中状态,同时保存相关值在隐藏栏位

复制代码代码如下:

//用查询得的数据集进行绑定

if (dt.Rows.Count > 0)

{

//绑定

this.gv_InfoFromSendModule.DataSource = dt;

this.gv_InfoFromSendModule.DataBind();

//确定按钮显示

this.btn_OK.Visible = true;

this.txthid_RowCount.Text = dt.Rows.Count.ToString();

}

//GridView的RowDataBound

protected void gv_InfoFromSendModule_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowIndex < 0)

return;

e.Row.Attributes.Add("onclick", "radButton('" + e.Row.RowIndex.ToString() + "','" + e.Row.Cells[1].Text.Trim() + "');");

//RadioButton rad = (RadioButton)e.Row.Cells[0].FindControl("rad_Select");

//rad.Attributes.Add("onclick", "radButton('"+e.Row.RowIndex.ToString()+"','"+ e.Row.Cells[1].Text.Trim()+"');");

}

//行上所绑定的JS

function radButton(rowIndex,rowGUID)

{

//gv_InfoFromSendModule$ctl02$rad_Select

var rowCount = parseInt(document.all.txthid_RowCount.value)+2;

for(var i=2;i

{

var tmpName;

if(i<10)

{

tmpName = "gv_InfoFromSendModule$ctl0"+i+"$rad_Select";

}

else

{

tmpName = "gv_InfoFromSendModule$ctl"+i+"$rad_Select";

}

//取得对应的Radio对象

var tmpRadio = document.getElementById(tmpName);

//当前选中 其他取消选中

if((i-2) == rowIndex)

{

tmpRadio.checked = true;

}

else

{

tmpRadio.checked = false;

}

}

document.all.txthid_GUID.value = rowGUID;

}

12.去掉前后空格

复制代码代码如下:

function fn_Trim(obj)

{

if(obj==null)

{

return;

}

else

{

var oldStr = obj.value;

var newStr = oldStr.replace(/^\s+|\s+$/g,"");

obj.value = newStr;

}

}

13.TextBox文本内容长度判断 看是否超过长度 超过返回true

复制代码代码如下:

function fn_IsTooLong(obj,varLength)

{

if(obj==null)

{

return false;

}

else

{

var valueStr = obj.value;

var len = valueStr.match(/[^ -~]/g) == null ? valueStr.length : valueStr.length + valueStr.match(/[^ -~]/g).length ;

if(len > parseInt(varLength) )

{

return true;

}

else

{

return false;

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值