1. JS中取得Asp.Net的值
(1)取得服务端控件的值
var s = document.getElementById("TextBox1").value; //取得TextBox1的Text值
(2)取得全局变量的值
在Page_Load()方法前定义protected String sT;
在Page_Load()方法中赋值sT = "哈哈";
JS中这样写取得
var s = "<%=sT %>";
--------------------------------------------------------------------------------
2. Asp.Net中取得JS的值
推荐使用<asp:HiddenField ID="HiddenField1" runat="server" />控件
在JS中添加代码
document.getElementById("HiddenField1").value = '风中追风';
在后台代码中,可以直接使用HiddenField1.Value取得
使用<input type="hidden" id="leslie" runat="server" />
在后台代码中,可以直接使用leslie.Value取得
PS:
也可以使用<input type="hidden" id="leslie" name="leslie">方法
在后台操作中用Request.Form.Get("leslie"); //取得的是name="leslie"的值 ......
public static string TheColor(string color,string enumName)
{
return string.Format("<span style=\"color={0}\">{1}</span>",color,enumName);
}
public enum YesOrNo
{
NO=0,
Yes=1
}
/// <summary>
/// 将“‘是、否’枚举”转化为文本(中文)
/// </summary>
/// <param name="yn">“是、否”枚举</param>
&nb ......
今天在实现如题内容时,始终出现了一些问题,在论坛留言,回复者甚多,但也良莠不齐,遂在痛苦煎熬的整理后,生出此文
本文仅为一种GridView+CheckBox实现全选/反选/删除的方法,仅供大家参考,欢迎大家提出自己宝贵意见
demo.aspx页面
<!-- 略-->
<asp:GridView id="GvContent" runat="server" >
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<input ID="ckbSelectAll" type="checkbox" onclick="selectAll()" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ckbSelectItem" runat="server" />
<input id="hihSelectId" type="hidden" runat="serve ......
一、数据加密/编码算法列表
常见用于保证安全的加密或编码算法如下:
1、常用密钥算法
密钥算法用来对敏感数据、摘要、签名等信息进行加密,常用的密钥算法包括:
DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合;
3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高;
RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快;
IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;
RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件快的长度也是可变的;
DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准);
AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前 AES 标准的一个实现是 Rijndael 算法;
BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快;
其它算法,如ElGamal、Deffie-Hellman、新型椭圆曲线算法ECC等。
2、单向散列算法
单向散列函数一般用于产生消息摘要,密钥加密等,常见的有:
......
根据我个人使用ASP.NET的经验,和通过在网上搜索。我发现,Page的ResolveUrl方法给我们带来了一些比较严重的问题。
最常见的问题是在页面或控件以外的范围不能使用它。
其他的问题都是bug。如它不能正确处理一些你给的URL。例如,尝试 Page.ResolveUrl("~/test.aspx?param=http://www.test.com")。结果与你输入字符串相同,没做任何变动。使用Reflector查看asp.net代码,我发现将相对URL转换为绝对URL机制都是先搜索string中的 "://",如果找到,就直接返回了。因此,如果你传递一个带://的参数,查询字符串就是OK的。我们都知道的查询字符串参数应进行urlencode,但如果没有,它应该仍然是可以接受URL。严重的是,要检查您的浏览器。
网上,建议的方法是使用VirtualPathUtility.ToAbsolute,如果你在传递URL作为查询字符串,这是相当不错和方便的,...否则,就会引发异常。如果是一个绝对URL,它也会抛出异常!
所以,我决定寻求一个最终解决方案。
首先,我要找搜索一个很好的变量,它能给我们在应用程序运行时的虚拟路径,不使用页面上下文。
......
1、sql注入漏洞。
解决办法:使用存储过程,参数不要用字符串拼接。简单改进办法:使用SqlHelper和OledbHelper
2、跨站脚本漏洞
解决办法:“默认禁止,显式允许”的策略。具体参考:从客户端检测到有潜在危险的Request.Form值,禁止提交html标记(<>等被转义成<)
3、上传漏洞
解决办法:禁止上传目录的运行权限。只给读取权限。另外要禁止上传非法类型文件。不仅仅是aspx类型,包括很多,甚至htm、html类型文件也不应该直接上传保存。
4、数据库连接帐号,尽量使用最低权限的帐号。一定不要给管理员权限。
假如被黑客得知了数据库的密码。
那我们就可以执行任意系统命令了。
例如:xp_cmdshell 'dir c:\'
另外还有
tasklist
taskkill
pslist
pskill
net user
&nbs ......