欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

总结ASP.NET C#中经常用到的13个JS脚本代码

程序员文章站 2024-02-12 14:59:40
在c#开发过程中,免不了写一些js,其实做后端开发的,本身不擅长写js,干脆总结一下,方便自己也方便别人,分享给大家。呵呵~~ 1.按钮前后台事件 复制代码 代码如下:...

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

1.按钮前后台事件

复制代码 代码如下:

<asp:button id="button1" runat="server" onclick="button1_click" text="button"
onclientclick="alert('客房端验证,阻止向服务器端提交');return false;" />

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

复制代码 代码如下:

this.textbox1.attributes.add("onchange",
"alert('数据被改动,现检查输入是否符合规则');");

3.注册相关属性:

复制代码 代码如下:

this.textbox1.attributes.add("readonly", "true");

4.引入js文件

前台html页面:

复制代码 代码如下:

<script type="text/javascript" src="jscript.js" language="javascript"></script>
<script type="text/javascript" language="javascript">
function fn_name()
{
    alert("js");
}
</script>

后台cs页面:

复制代码 代码如下:

this.registerclientscriptblock("jsfile",
"<script type='text/javascript' src='jscript.js' language='javascript'></script>");
[code]

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

[code]
function checkempty(txtobj,msgshow)
{
    if(txtobj.value == "")
    {
        alert(msgshow);
        return false;
    }
}
<asp:button id="button1" runat="server" onclick="button1_click" text="button"
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;    
    }
}
<input id="checkbox1" type="checkbox" onclick="chktextbox(checkbox1,textbox1)" />

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页面相关代码:

复制代码 代码如下:

<input id="hidbtn_submit" type="button" value="确认修改"
style="display:none;"
onserverclick="hidbtn_submit_serverclick"
runat="server" />

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

复制代码 代码如下:

#region 添加页面对快捷键的响应
string strjs_shortkey = "<script language='javascript' type='text/javascript' > ";
strjs_shortkey += " document.onkeydown=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"+" ";
stralertcontent += "bbb" +" ";

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<rowcount;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;
        }
    }     
}