【问题标题】:pageslide plugin does not fire postbackpageslide 插件不会触发回发
【发布时间】:2012-12-16 04:12:56
【问题描述】:

我正在使用PageSlide 插件。我向 div#modal、ASP 标签和一个按钮添加了一个表单。 但是,该按钮不会在单击时触发回发事件。

HTML:

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">
<title></title>
<script src="js/jquery-1.8.3.min.js" type="text/javascript"></script>
<link href="css/jquery.pageslide.css" rel="stylesheet" type="text/css" />
</head>

<body>
<form id="form1" runat="server">
 <script src="js/jquery.pageslide.min.js" type="text/javascript"></script>    
 <a href="#modal" class="second">Show</a>
 <div id="modal" style="display: none">        
  <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
  <asp:Button ID="Button1" runat="server" Text="Submit" OnClick="Button1_Click"/>
 </div>
 <p><a href="javascript:$.pageslide.close()">Close</a></p>
 <script>
    $(".second").pageslide({ direction: "left", modal: true });
 </script>
</form>

代码隐藏:

protected void Button1_Click(object sender, EventArgs e)
{
    Label1.Text = "Its Working";
}

谁能告诉我怎么了?提前致谢。 :)

【问题讨论】:

  • 您的 HTML 似乎没有连接到代码隐藏文件。它看起来像一个静态 HTML 页面。

标签: c# jquery postback


【解决方案1】:

在我看来,这种行为的原因是因为插件克隆了模态 div 并使用克隆的内容来显示模态弹出窗口。因此,Button1 不再放置在表单中,也不会导致点击回发。尝试设置UseSubmitBehavior="false" 按钮的属性。这种方式回发应该通过javascript而不是defaulr提交按钮的行为来触发

【讨论】:

  • 谢谢,它现在可以工作,但是当我在 UpdatePanel 中添加标签和按钮时就不行了。有什么指点吗??
  • @Fahad,尝试仅将标签放入 UpdatePanel 并将按钮注册为 AsyncPostNackTrigger
  • 试过了,它不能正常工作:(点击按钮时标签的值不会改变,但点击按钮后,如果我再次隐藏并显示页面滑动窗格,则值标签更改..我想我必须更详细地研究插件代码..
  • @Fahad,好的,问题还是一样 - 插件克隆元素以显示模式。因此,尽管更新面板中的标签获得了新文本,但模态视图中显示的克隆标签保持不变。您可以使用 RegisterStartupScript.RegisterStartupScript 方法从按钮的单击处理程序中刷新标签的文本,并使用如下脚本:string.Format("$('#{0}').text('{1)');", Label1.ClientID, Label1.Text)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多