C/S转B/S学习第一步 几个常用的东东和需要注意的事项

1.后台调用前台

ScriptManager.RegisterStartupScript(this, this.Page.GetType(), "", "前台方法名();", true);

如果调用后台方法的前台方法的触发元素在UpdatePanel中,则

ScriptManager.RegisterStartupScript(UpdatePanelID, this.Page.GetType(), "", "前台方法名();", true);

2.前台调用后台

网上有好几个方法,但是都很操蛋,

(1)比如把方法设为非void返回值类型,然后权限设为public或者protected类型。然后直接alert(‘<%=后台string类型方法%>‘),操蛋,这个方法在每次pageload过后都会被执行。。。。。。

(2)通过提交服务器表单,指定他的事件参数和指向目标,然后提交表单,这方法你会用么,我是感觉累的不行。

还有其他几种都是比较扯,用起来各种问题我也就不去找解决之道了,目前我就用一种方法,直接在前台方法中调用服务器端控件的事件,则直接跳入给后台服务器事件,从事件找出口跳到自己想要执行的方法。要么加标记,判断标记0时执行正常的事件应该走的流程,标记其他时就知道是从前台调用进来的,然后根据标记的内容判断是前台哪个方法调用的,执行后台对应的方法。

3.隐藏控件或隐藏域存储值

隐藏域存储值,因为其自身是个没有焦点的控件,所以不会获得change事件,就不能引发改变,所以就要我们强制引起change,从而改变他的值。

前台调用和一般控件一样,后台取值时string s = Request.Form["隐藏域Name"]。后台无法进行赋值,需要从前台进行赋值,赋值时千万记得强制change哦!

隐藏控件各种初始化没有生成问题,所以我们就不设置其隐藏属性为妙,聪明的做法就是使用会隐身术的容器包裹他一下,自然就隐藏起来了。

比如使用<span style="display: none"><input id="id1" value="你要赋的值" /></span> 或者<div>这类会隐身的标签都行,一包装就ok了,用起来比隐藏域舒服的多。

4.打开(全屏)子窗口,子窗口关闭时刷新父窗口(比较实用的一个方法)

使用了js打开子窗口

window.open(‘PtnPayForDebt.aspx?ID=‘ + str, ‘newwindow‘, ‘width=‘ + (window.screen.availWidth - 10) + ‘,height=‘ + (window.screen.availHeight - 30) + ‘,top=0,left=0,resizable=yes,status=yes,menubar=no,scrollbars=yes‘);

同样使用js代码关闭自身并刷新父窗体

window.opener.btnFreshData();
window.open(‘‘, ‘_self‘);
window.close();

5.弹出层和关闭层

1     //div初始状态进入隐身状态,呵呵
2 <div id="popDiv" class="mydiv" style="display:none;">如确认删除,必须填写删除原因!<br/>
3     <asp:Label ID="Label2" runat="server" Text="删除原因:"></asp:Label>
4     <asp:Label ID="lblRecID" runat="server" Text="" Visible="false"></asp:Label>
5     <asp:TextBox ID="txtBox_reason" runat="server" Width="110" Text=""></asp:TextBox><br/>
6     <a href="javascript:closeDiv()">确认删除</a>
7     <a href="javascript:cancelDiv()">取消删除</a>
8     </div>

 1         function showDiv() {
 2                 document.getElementById(‘popDiv‘).style.display = ‘block‘;
 3                 document.getElementById(‘bg‘).style.display = ‘block‘;
 4             }
 5
 6         function closeDiv() {
 7            if(document.getElementById("<%=txtBox_reason.ClientID%>").value == "") {
 8                 alert(‘请输入删除收费单原因!‘);
 9                 return;
10             }
11            else {
12                 document.getElementById("<%=ButtonReturn.ClientID%>").click();
13                 document.getElementById(‘popDiv‘).style.display = ‘none‘;
14                 document.getElementById(‘bg‘).style.display = ‘none‘;
15            }
16            document.getElementById("<%=txtBox_reason.ClientID%>").value = "";
17         }

今天的一期就到这吧,下期我们聊聊html相关话题吧,webform这孩子不太听话,闹不好,准备丢了,谁爱领养谁领养。

时间: 2024-10-29 03:00:44

C/S转B/S学习第一步 几个常用的东东和需要注意的事项的相关文章

Java 学习第一步-JDK安装和Java环境变量配置

Java学习第一步——JDK安装及Java环境变量配置 [原文] 2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋友也越来越多了,作为一门面向对象的编程语言,Java也有着安全.高效等诸多有点.从TIOBE(TIOBE排行榜是根据互联网上有经验的程序员.课程和第三方厂商的数量,并使用搜索引擎(如Google.Bing.Yahoo!.百度)以及Wikipedia.Amazon.YouTube统计出排名数据,只是反映

Qt 学习第一步 做计划和确定目标

接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edition) 2> Fundations of Qt development. 3> The art of Building Qt Application 有了资料后.还必须制定学习目标. 依照难易,分为初,中,高 0基础:(入门) 目标: 1> 学会SDI框架 2> 学会文字,图片基本

spring学习第一步:导入项目至eclipse

第一步:下载安装gradle gradle下载地址:http://www.gradle.org/downloads 配置GRADLE_HOME到,将gradle的bin目录配置到系统环境变量的path中去.其实只需配置path不一定要配置GRADLE_HOME. 第二步:执行gradle 这步会经历很长时间,需耐心等待,执行也可能会出错,我遇到执行错误的情况,选择重新执行一次.第二次执行成功,大概花了2个小时. 首先打开cmd进入到spring源码目录,也就是以下目录: 然后执行命令gradle

Java学习第一步: Win7配置JDK环境

转摘"专注JavaWeb开发":http://www.javaweb1024.com/java/Javajichu/2015/03/02/353.html 下载JDK并安装到本机 , 附下载地址: JDK下载 第一步: 右键桌面我的电脑属性,点击”高级系统设置”   第二步: 在系统属性中,找到环境变量(默认为打开状态) 第三步: 然后点击环境变量   第四步: 点击新建,变量名为JAVA_HOME,变量值为JDK安装路径,我安装在D盘里的 环境变量值为 : D:\program fi

前端学习第一步----切图仔的诞生

刚刚学习了一下前端的入门课程,将设计师设计的logo等图片从PSD文件中切出来,并保存为PNG格式.PNG格式的主要优点就是背景色可以为空白,不同于普通格式的图片的白色.使用的工具是Photoshop 首先先了解下ps中的基础概念,图层,选区,图层的合并,图层的移动. 0.ps的基本操作,Alt+左键可以放大图片,空格+左键可以移动图片 1,如何选中一个图层,我们首先将鼠标移动到选择工具,然后移动到我们要选中的图层上按住Ctrl+左键,会自动在图层中找到该对应的图层,找到该图层后我们再在该图层的

Linux学习第一步_CentOS系统安装

突然对Linux很感兴趣,于是就在自己的虚拟机环境上安装了一个CentOS6.0的系统,开始准备学习Linux可能写一篇Linux部署会让别人觉得很菜,但是写博客的习惯还是好的把我的步骤写出来,一呢,增强记忆,二呢,大神们如果看到哪里有错误,指点一下 ===VMware Workstation创建虚拟机 1)选择典型(推荐),虚拟机版本会继承VMware Workstation的版本,如果要自定义SCSI控制器类型\虚拟磁盘类型\虚拟机版本等信息选择自定义(高级) 2)暂时不选择光盘映像文件,这

iOS 学习第一步

学习iOS首先要学会怎么使用苹果电脑 本人初期学习过程总结: a9本课程从第一次上手Mac开始,循序渐进的介绍了 OS X 的日常使用方法以及诸多实用技巧.在课程的后半部分以范例的形式深入讲解了OS X 下的一些高级技巧. 苹果系统是软硬结合度非常高的 1.0:Mac OS 简述.谈谈 Mac OS 到 OS X 的发展过程,以及 Mac OS 与 Windows 的爱恨情仇. MAC(苹果电脑) Mac是苹果自1984年起以“Macintosh”(麦金塔电脑)开始的个人消费型计算机搭载Mac

嵌入式学习第一步:环境搭建

? 之前写过类似的文章,当时的环境是一台pc机,只有一个网卡可以上网,当时实现的是上网的问题.然后不涉及到多网卡的问题. 今天用我个人的笔记本做实验的时候,死活没搞出来.这个很奇怪,以后可以在看看. 不过,我也找了一些个资料,现在将我个人认为比较好的解决思路拿过来和大家分享. ? 参考资料:http://www.cnblogs.com/bugenius/p/linux-vmware-network.html vmware上安装redhat 并配置相互ping通,并实现上网功能. 对于linux的

选择linux学习第一步_我的决心书

人生有7次选择的机会,每次机会相隔7年,从25岁左右开始出现,到74岁左右结束.一般第一次和最后一次不经意间就会错过,25岁太年轻没有经验,74岁太老心有余力不足.中间还剩下第2.3.4.5.6次的机会,但是又因为这个或那个原因错过2次,真正能选择的机会也就只有3次. 24岁,在我大学刚毕业那时,思想感觉天高任鸟飞,海阔凭鱼跃.可实际上却没有方向.自己对社会一无所知,不知道什么是想要的和不想要的.然后就根据大众的思维,选个与专业对口的行业工作,机械系就选择生产制造业.但是5年以后的今天,即将三十