问题描述
- jQuery如何判断onclick是否触发,从而实现不同的代码?
-
比如:页面加载时,判断onclick是否触发,从而实现数据全部加载还是进行条件查询?
如:后台代码
string key = context.Request.QueryString["Keyword"];
//判断
if (key!=null)
{
//调用B层的方法从而获取数据库的DatasetADO.SqlAdo ado = new ADO.SqlAdo();
string sql = "select * from tb_Provider where PrName like '%" + key + "%' or PrPeople like '%" + key + "%'or PrPhone like '%" + key + "%' ";
DataSet ds = ado.getTable(sql);
// DataSet ds = sqla.GetDataSet(strfaca);
//将Dataset转化为DatableDataTable dt = ds.Tables[0];
int count = dt.Rows.Count;
string strJson = Dataset2Json(ds, count);//DataSet数据转化为Json数据context.Response.Write(strJson);//返回给前台页面
context.Response.End();
}
else
{
//调用B层的方法从而获取数据库的DatasetADO.SqlAdo ado = new ADO.SqlAdo();
string sql = "select * from tb_Provider ";
DataSet ds = ado.getTable(sql);
// DataSet ds = sqla.GetDataSet(strfaca);
//将Dataset转化为DatableDataTable dt = ds.Tables[0];
int count = dt.Rows.Count;
string strJson = Dataset2Json(ds, count);//DataSet数据转化为Json数据context.Response.Write(strJson);//返回给前台页面
context.Response.End();
}前台代码:
$(function () {
$('#dg').datagrid({
url: 'ashx/ProviderQuery.ashx'//请求数据的URL 代码附后
});
})
解决方案
做一个全局变量,保存是否执行标记
解决方案二:
不理解,可以讲得具体一点吗?谢谢
解决方案三:
onclick的时候你用cookie记录下点击的是哪个就好了,页面再次加载判断下cookie是哪个
DEMO
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<div id="dv">
<a >1</a> <a >2</a> <a >3</a> <a >4</a> <a >5</a>
</div>
<script>
$('#dv a').click(function () {
document.cookie = 'aindex=' + $(this).index(); //用cookie记录点击的a的下标
alert(this.innerHTML);
})
if (m = /aindex=(d+)/.exec(document.cookie)) {//判断cookie是否存在,存在执行对应的代码
$('#dv a').eq(m[1]).trigger('click');
}
</script>
解决方案四:
onclick在点击的时候才能触发