按下按钮处理两个事件

时间:2010-07-19 20:11:30

标签: asp.net jquery

我对asp.net/jQuery游戏有点新意,我似乎遇到了困难。我正在使用colorbox制作一个模态窗口弹出窗口,我希望在该模态窗口上显示上传图片。我有一个按钮来打开添加照片表单:

<a href="#" class="addpicture">Add/Edit picture(s)</a><br />
 <script>
        $(document).ready(function () {
            $(".addpicture").colorbox({ width: "50%", inline: true, href: "#page1" });
        });
 </script>

到目前为止,我的模态窗口工作正常,并显示以下上传表单和下一个按钮:

<asp:FileUpload ID="picup" runat="server" class="upload" /><br />
        <asp:Button ID="Button1" type="button" runat="server" Text="Next Page" class="nextpage" />

这是我被困的地方;我试图让下一个按钮上传图片,然后移动到第二个模态窗口,我将实现一个裁剪功能。问题是,要做到这一点,我需要一个jquery事件处理程序:

$(".nextpage").colorbox({ width: "50%", inline: true, href: "#page2" });

我还需要一个服务器端事件处理程序来进行实际上传:

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    Try
        picup.PostedFile.SaveAs("\Pictures\1-a.jpg")
    Catch ex As Exception
        Response.Write("Upload Failed")
    End Try
End Sub

但是,当我输入断点时,此事件处理程序永远不会触发。 我想到的一个可能的解决方案是创建一个触发javascript的隐藏按钮,然后从vb单击该按钮,但我无法弄清楚如何从vb单击按钮。有什么我在做根本错的吗?有没有一种好方法可以实现我想要的目标?

编辑:我改变了我这样做的方式,而不是多个模态窗口,我在模态窗口的iframe中加载一个单独的页面,然后我可以在不重新加载主页面的情况下进行回发。谢谢您的帮助。

2 个答案:

答案 0 :(得分:0)

使用fileUpload控件上传文件时需要回发,否则事件永远不会触发。

  • jQuery有一些插件可以通过ajax上传,但我从未尝试过。

答案 1 :(得分:0)

在jquery bind()方法中,您可以将不同的行为附加到元素:

示例:

$("#a").bind("mouseover mouseout", function(e){
     $(this).text($(this).text() + " event triggered " );
});