这几天一直在想ajax无刷新查询,由于对ajax不是很熟悉,在网上找了很多资料,最后找到了标题为“Jquery仿淘宝京东多条件筛选可自行结合ajax加载示例”,看了这个代码后终于做出来了,贴出部分代码做下记录。
aspx:
<div class="searchweb">
<div class="title">网站类型:</div>
<div class="searchs" id="wtypeval">
<span tag=''>所有</span>
<asp:Repeater ID="reWebType" runat="server">
<ItemTemplate>
<span tag='<%#Eval("listvalue") %>'><%#Eval("listdetail") %></span>
</ItemTemplate>
</asp:Repeater>
</div>
</div>
。。。。。
js:
$(function() {
var alink01 = $("#wtypeval").find("span");
alink01.click(function() {
alink01.each(function() {
$(this).removeClass("on");
});
$(this).addClass("on");
$("#e_wtype").val($(this).attr("tag"));
SetPara();
})
。。。。。。
});
function SetPara() {
var a = $("#e_wtype").val();
var b = $("#e_wcate").val();
var c = $("#e_wprov").val();
var d = $("#e_wlink").val();
var e = $("#e_wdraft").val();
//$("#getdlist").remove();
$.ajax({
type: "post",
dataType: "json",
url: "getweblist.ashx",
data: "wtype=" + a + "&wcate=" + b + "&wprov=" + c + "&wlink=" + d + "&wdraft=" + e + "",
success: function(msg) {
// alert(msg);
var str = "";
for (i in msg) {
str += "<tr><td><input type=\"checkbox\" name=\"cid\" value=\"" + msg[i].id + "\" /></td><td>" + msg[i].wtitle + "</td><td>" + msg[i].retail + "</td><td>" + msg[i].agent + "</td><td>" + msg[i].wlink + "</td><td>" + msg[i].draft + " %</td><td>" + msg[i].remark + "</td></tr>";
}
$("#getdlist")[0].innerHTML = str;
}
});
};
/*页面第一次加载时加载网站列表*/
$(function() {
SetPara();
})
ashx:
string wtype = context.Request.Form["wtype"];
string wcate = context.Request.Form["wcate"];
string wprov = context.Request.Form["wprov"];
string wlink = context.Request.Form["wlink"];
string wdraft = context.Request.Form["wdraft"];
DataSet ds = web.GetWebsByLink(wtype, wcate, wprov, wlink, wdraft);
int y = ds.Tables[0].Rows.Count;
StringBuilder sb = new StringBuilder();
sb.Append("[");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
sb.Append("{");
sb.Append("\"id\":\"" + ds.Tables[0].Rows[i]["id"].ToString() + "\"");
sb.Append(",\"wtitle\":\"" + ds.Tables[0].Rows[i]["wtitle"].ToString() + "\"");
sb.Append(",\"retail\":\"" + ds.Tables[0].Rows[i]["retail"].ToString() + "\"");
sb.Append(",\"agent\":\"" + ds.Tables[0].Rows[i]["agent"].ToString() + "\"");
sb.Append(",\"wlink\":\"" + dlist.GetListDetail(ds.Tables[0].Rows[i]["wlink"].ToString(), "linktype") + "\"");
sb.Append(",\"draft\":\"" + ds.Tables[0].Rows[i]["draft"].ToString() + "\"");
sb.Append(",\"remark\":\"" + ds.Tables[0].Rows[i]["remark"].ToString() + "\"");
if (i == (ds.Tables[0].Rows.Count - 1))
{
sb.Append("}");
}
else
{
sb.Append("},");
}
}
sb.Append("]");
context.Response.ContentType = "text/plain";
context.Response.AddHeader("Content-Type", "text/html; charset=utf-8");
context.Response.Write(sb.ToString());
context.Response.End();