<script>
function toupiaoClick() {
var count = $("input[type='checkbox']:checked").length;
if (count <= 2) {
alert("请至少投三个人");
}
else {
var ids = [];
$("input[type='checkbox']:checked").each(function () {
ids.push($(this).val());
})
$.post("/User.ashx", { AjaxName: 'toupiao', userId: '<%=Session["userId"]%>', "ids": JSON.stringify(ids) }, function (msg) {
if (msg == "OK") {
alert("测评成功,学校老师会尽快与你取得联系!");
location.reload();
}
else {
alert(msg);
}
})
}
}
</script>
前台利用json.stringify()将javascript值转换为JSON字符串
JSON.stringify() | 用于将 JavaScript 值转换为 JSON 字符串。 |
<%@ WebHandler Language="C#" Class="User" %>
using System;
using System.Web;
using DAL;
using System.Data;
using System.Data.SqlClient;
using System.Web.SessionState;//注意引用
using System.Web.Script.Serialization;//注意引用
using Model;
public class User : IHttpHandler,IRequiresSessionState {//注意要实现 IIRequiresSessionState接口
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
HttpRequest requset = context.Request;
string Str_AjaxName = requset["AjaxName"];
if (Str_AjaxName == "toupiao")
{
string UserId = requset["userId"];
var ids = requset["ids"];
JavaScriptSerializer js = new JavaScriptSerializer();
string[] str = js.Deserialize(ids, typeof(string[])) as string[];
voteDal dal = new voteDal();
try
{
for (int i = 0; i < str.Length; i++)
{
//[2]封装对象
voteDetail objvoteDetail = new voteDetail()
{
VoterUserId = UserId,
VoteeUserId = str[i]
};
//[3]提交数据库保存对象
dal.AddVote(objvoteDetail);
}
context.Response.Write("投票成功");
}
catch (Exception ex)
{
context.Response.Write(ex.Message);
}
}
}
public bool IsReusable {
get {
return false;
}
}
}