前言
BS的学习任务基本上结束了,当然仅仅是视频的学习内容。很多都没有具体的实践过程,BS很多的技术和框架都没有认真的学习和实践。这次在跟着崔哥在实践的时候,感觉对于BS的内容还是要更多的学习和研究。接下来,对数据如何从前台传到进行一些小的总结。当然只是自己在实际过程中用到的,可能还有其他的。
提交表单
post和get的区别
提交表单的方式无外乎post和get这两种,在默认情况使用的get方式。
1.安全性
get这种方式,在牛腩新闻发布系统都学习使用过。在数据传输的时候,会将数据的参数数值显示在链接里。当然可以将参数数值加密,这样会好点,但相对来说post这种使链接没有任何变化方式更为安全。
2.在后台的值的获取上
post获取方式为Request.Form[];这个方法在c#中是重载的,可以用索引,也可以使用控件的名字
如:
Request.Form[number];Request.Form["name"];
在使用索引的时候,有时候会出现一些问题。比如:在页面加载的时候就使用这个索引来获取的时候就会报错,因为这时候表单里面根本没有任何数据。肯定会出现溢出,超出索引范围的错。
所以推荐第二种。
get的方式为Request.QueryString[];这个里面填写的是控件的名字。因为不常用就没什么多说的。
简单了解了这两种表单提交的方式下面就直接看code
varform = document.forms["填写需要提交的表单的ID"];form.action = "需要提交到的页面地址";form.method = "POST";form.submit();
对只要这几句简单的代码,剩下的工作只需要到后台去拿就可以了。只要到了后台,剩下就是CS和数据库的知识了。调试起来会容易很多。
利用location属性
var startTime =document.getElementById("StartTime").nextSibling.childNodes[2].value;var endTime = document.getElementById("EndTime").nextSibling.childNodes[2].value;var keyword =document.getElementById("keyword").value;var category =document.getElementById("Category").nextSibling.childNodes[2].value;var t = "startTime=" +startTime + "&endTime=" + endTime + "&keyword=" +keyword + "&category=" + category;location ="admin_ManageScoreRule.aspx?"+t;
后台获取
string startTime =Request.QueryString["startTime"];string endTime = Request.QueryString["endTime"];string keyword =Request.QueryString["keyword"];
string category =Request.QueryString["category"];
总结
这些都是在BS设计中最常用的技术,更多的是还是要多多动手去实践。因为这些东西说半天都没有,只有用了一两次,调了半晌的错。这些自然而然就深入脑海了。