由于项目需要做一套调查问卷,但客户要求调查问卷的题目,必须是纯html标签,于是就面临着一系列的问题
**1页面如何提交**
用户做完了调查问卷,调查的结果如何提交?
**2如何给页面传递参数**
同一个调查问卷,多个人提交后,管理人员查看调查问卷,如何传递参数,保证看到的数据是指定某一个人的调查问卷。其实这个问题,在asp.net中使用最简单的查询字符串就可以解决,但在纯html中,如何传递参数?
**3如何验证用户身份**
在用户登陆后,才能答卷,如何验证用户是否登录呢?
整个系统都使用html实现?能完成吗?似乎不行,毕竟提交的数据需要保存到数据库中,这个恐怕不是纯html可以完成的。
所以基本思路就是前台全部使用html静态网页,但后台却必须使用csharp代码配合。
**1页面如何提交**
其实纯html可以提交,主要是通过标签form。
例如如下代码,在提交到savedata.aspx后,就可以获得用户输入的所有的数据,在进行处理后保存到数据库,可以通过ajax提交,也可以通过input的 type为submit的标签提交。
~~~
~~~
<input type="submit" value="Submit" />
~~~
~~~
~~~
<form action="savedata.aspx" method="post">
<p>First name: <input type="text" name="fname" /></p>
<p>Last name: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>
~~~
**2如何给页面传递参数 **
在asp.net中给页面传递参数其实最简单就是通过查询字符串,但纯html了网页是静态网页,没有对应页面的后台,如何传递参数
例如同一套问卷,张三,李四都解答了问卷,管理员要查看张三的问卷,如何把张三的答案重新赋值给问卷的试题?
由于html是是静态页面,想要读取数据,就必须通过ajax动态读取答案,然后再修改静态页面。但如何传递表示某一个人的参数呢?
其实还是通过查询字符串,但分析查询字符串的方法从后台变为前台,变成了通过js去分析查询字符串,然后通过ajax读取数据。
~~~
function QueryString(name )
{
var sURL = window.location.search
var re = new RegExp("" +name+ "=([^&?]+)", "ig");
var result= re.exec(sURL);
if(result)
{
var temp= result[0].split('=');
return temp[1] ;
}
else
{
return "";
}
}
~~~
当然还有一种方法,因为读取数据是要通过后台的,所以可以根据Session中的信息来获取参数,但如果Session中没有相关信息,就只能通过通过查询字符串的方式了。
例如此处的例子,就只能通过查询字符串的方式了。
**3如何验证用户身份**
既然整个系统没有办法只是用html完成,前台展示是纯html,后台是csharp代码,自然也就存在Session,当然也就可以验证用户身份了。如果需要判断静态的html页面是否过期,可以通过ajax调用后台方法,根据Session是否存在判断用户是否登录以及是否过期等判断。
- 前言
- js封装和作用域
- 封装html的select标签的js操作
- js正则表达式的使用
- 使用闭包对setTimeout进行简单封装
- js中如何复制一个对象,如何获取所有属性和属性对应的值
- js中如何把字符串转化为对象
- js操作iframe兼容各种浏览器
- js模板方法的思路及实现
- 在js中如何实现方法重载?以及函数的参数问题
- 单纯的html页面如何提交,传递参数,以及对身份的验证
- ajax如何调试
- js综合应用简单的表格统计
- js格式化货币数据
- js综合应用:表格的四则运算
- 如何在浏览器中打开PDF文件并实现预览的思路与代码
- js实现幻灯片效果
- js实现幻灯片效果二
- jquery-easyui必填项隐藏问题的处理方案
- jquery-easyui隐藏可用不可用的问题的处理方案
- js变量作用域--变量提升