我已经实现了jQueryPagination插件,以便轻松分页中继器控件。这工作正常,但在此页面上我有一个用户控件,允许用户搜索票号。点击搜索按钮后,分页消失,我可以看到所有中继器信息以及返回的搜索结果。当我的asp.net按钮被点击,我的jQuery页面功能打破
当我点击链接按钮我的jQuery似乎是不存在的。
代码:
<div id="msgLinks" class="subtabs">
<asp:TextBox runat="server" ID="txtSearchTicket"></asp:TextBox>
<asp:LinkButton ID="lbSearch" runat="server" Text="Search" CausesValidation="false"
onclick="lbSearch_Click" />
</div>
的jQuery(可在页面加载)
$('#tblRecAct').paginateTable({
rowsPerPage: 5,
Title: ".h1RecentActivity"
});
$('#tblMSG').paginateTable({
rowsPerPage: 2,
Title: ".h1SubmittedMessages",
pager: ".pager2",
pageNumbers: ".pageNumbers2"
});
我甚至已经打过电话
$(".subtabs a").click(function() {
alert("Clicked");
$('#tblRecAct').paginateTable({
rowsPerPage: 5,
Title: ".h1RecentActivity"
});
});
,但它仍然无法正常工作。有任何想法吗?
编辑每个请求 新代码:
页 -
public string _Js = "";
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
rptRecentMessages.DataSource = CMS.Model.Profile.RecentMessages(0, "");
rptRecentMessages.DataBind();
_Js = "CreatePaging();";
LoadStatusMessages();
}
}
用户控制(持有搜索按钮) -
rptRecentActivity.DataSource = CMS.Model.Profile.RecentActivity(20);
rptRecentActivity.DataBind();
_Js = "CreatePaging();";
搜索按钮点击 -
protected void lbSearch_Click(object sender, EventArgs e)
{
string searchTerms = txtSearchTicket.Text;
if (searchTerms == "")
txtSearchTicket.Style.Add("border", "1px solid red");
else
{
rptRecentMessages.DataSource = CMS.Model.Profile.RecentMessages(1, searchTerms);
rptRecentMessages.DataBind();
_Js = "CreatePaging();";
LoadStatusMessages();
}
}
jQuery代码的页面上 -
<script type="text/javascript">
$(document).ready(function() {
function CreatePaging(){
$('#tblRecAct').paginateTable({
rowsPerPage: 5,
Title: ".h1RecentActivity"
});
$('#tblMSG').paginateTable({
rowsPerPage: 2,
Title: ".h1SubmittedMessages",
pager: ".pager2",
pageNumbers: ".pageNumbers2"
});
}
$().ready(function(){
<% =(this._Js) %>
});
});
</script>
当我调试,现在点击搜索链接,我没有得到回发到Page_Load中,我不知道为什么。
粘贴你的ASP代码生成的实际HTML – JohnP 2011-04-14 13:54:20
为什么你会使用'onclick =“...”'属性当你使用jquery你击败它的灵魂pur姿势 – Val 2011-04-14 14:01:51
我认为这是因为当你点击链接按钮时,会发生回传,导致当前行为。尝试将'return false;'放在代码的最后一行下面,点击linkbutton时会触发它。 – 2011-04-14 14:02:57