ASP.ENT调用JS jquery

2021-01-29 10:57:04 浏览数 (1)

ASP.NET控件默认是submit状态的,所以点击都会提交到后台。

VS中我们拖动控件或是自己写控件,是这样的

在编译后:

在asp中的OnClick和在Html里的OnClick是不一样的,前者是ASP中的,所以点击触发的是服务器事件,后者是客服端事件,当然在ASP中也有客户端的,OnClientClick事件,它在编译后就是HTML里的OnClicK事件。

为防止我们在点击控件时提交,我们可以这样做。

,“javascript:”可以省略。意思就是,在提交前进行一个验证,在验证成功后再提交给后台,所以 edit2 这个方法返回了一个布尔值(true 和false),true时提交,在这个 edit2 方法中,我们可以更改控件的控件绑定的方法,使这个或某个控件的onClientClick事件绑定到其他方法上,我这里是更变了本身这个控件,传入了this

更改的方法为save。

以我的例子来说就是:点击服务器控件(编辑),触发onclick事件,更改表格结构填充数据,再改变这个控件的value为“保存”(asp的button编译后是html里的input),然后更改这个控件onclick事件的方法为save,然后return false 使之不提交,save方法里做要修改值得验证,而这个控件从一开始绑定的服务器方法就是存储数据的。

edit2方法:

代码语言:javascript复制
 function edit2(e) {
            var row = $(e).parent().parent().children("td");
            var value2 = row[4].innerText;
            row[3].innerHTML = "<input name='psInput' class='layui-input' value = '"   row[3].innerText   "'  style='width:100%'/>";
            row[4].innerHTML = "<input name='areaInput' class='layui-input' value = '"   row[4].innerText   "' style='width:100%'/>";
            $(e).val("保存");
            $(e).attr("onClick", "return save(this)");
            return false;
        }

save方式只是验证的,代码就不贴了。

最后效果图:

0 人点赞