2014-01-30 15 views
0

我想在Fancybox中显示搜索结果。该代码在Web表单中工作正常,但是当我与主页面集成时,该花哨框未打开。请给我一个解决方案! 我创建了两个web表单,Default1.aspx和Default2.aspx 在Default1.aspx的代码在下面给出,Fancybox在主页面使用时不会触发

<head runat="server"> 
<title></title> 
<!-- Add jQuery library --> 
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 

<!-- Add mousewheel plugin (this is optional) --> 
<script type="text/javascript" src="/fancybox/lib/jquery.mousewheel-3.0.6.pack.js"></script> 

<!-- Add fancyBox --> 
<link rel="stylesheet" href="/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" /> 
<script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script> 
</head> 
<body> 
<form id="form1" runat="server"> 
    <div> 
     <script lang="javascript" type="text/javascript"> 

     $(document).ready(function(){ 
      $('#fancybox').fancybox({ 
        autoDimensions: false, 
        height: 400, 
        width: 700, 
        type: "iframe" 
       }); 
     }); 

    </script> 
    <a id="fancybox" runat="server" style=" visibility: hidden "></a> 
    <asp:Literal ID="Literal1" runat="server"></asp:Literal> 
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
    <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
    </div> 
</form> 
</body> 

**Default1.aspx.cs** 

public partial class _Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      TextBox1.Text = Request.QueryString["cargoNo"]; 
     } 
    } 
    protected void Button1_Click(object sender, EventArgs e) 
    { 

     fancybox.Attributes["href"] = "~/Default2.aspx?cargoNo=" + TextBox1.Text.Trim(); 
     Literal1.Text = "<script> $(document).ready(function() {$(\"#fancybox\").trigger('click');});</script>"; 

     clear(); 
    } 
    public void clear() 
    { 
     TextBox1.Text = ""; 
    } 

} 

在Default2.aspx我添加一个SQL数据源和使用的GridView显示它。

在文本框中输入数字并单击button1。该serach将启动并在fancybox中显示结果。上面的代码工作得很好。 当我将此添加到母版页时,Fancybox不会触发。点击按钮后,页面只是刷新。所有的答复表示赞赏。我是新来的asp.net。请帮我解决这个问题。

回答

0

首先,确保您不要在您的母版页中调用Jquery源代码,因为我看到您在调用您的Default1.aspx上的Jquery,因为Jquery应该加载一次。其次,如果你不想让你的按钮发送回传,请将此添加到你的按钮中:UseSubmitBehavior="False"。希望这个帮助

相关问题