如何从模态弹出窗口向控件添加事件处理程序?

时间:2013-05-29 09:34:59

标签: asp.net ajax vb.net visual-studio asp.net-ajax

我是第一次使用Visual Basic进行编程,并使用AJAX - 我之前已经完成了这项工作,但几年前我已经陷入困境了!我已经搜索了主题,但他们都假设我认为我缺少的框架知识。非常感谢任何帮助。

这是我的标记:

<%@ Page Title="Report Execution" Language="vb" MasterPageFile="~/Site.Master" AutoEventWireup="false"
    CodeBehind="reportExecution.aspx.vb" Inherits="RDMI.reportExecution" %>

<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>
        Report Execution
    </h2>
    <p>
        Welcome to the RDMI Report Execution page.  Please select from the following reports:
    </p>
    <asp:Panel ID="panelReports" runat="server" Height="216px">
        <asp:Button ID="btnRDMI520" runat="server" Text="Inspection Outcomes Report" 
            BackColor="#D8D9DB" Font-Bold="True" ForeColor="#00539F" />
        <asp:modalpopupextender id="RDMI520_popup" runat="server" cancelcontrolid="btnNo"
            targetcontrolid="btnRDMI520" popupcontrolid="popupPanel"
            popupdraghandlecontrolid="popupHeader" drag="true" backgroundcssclass="backgroundPopup" OkControlID="btnYes" />
    </asp:Panel>
    <span id="statusSpan" class="status"></span><br />
    <asp:Panel ID="popupPanel" style="display: none" runat="server">
        <div class="comparisonPopup">
            <div class="comparisonPopupHeader" id="popupHeader" 
                style="font-size: 20px; font-weight: bold; color: #D8D9DB; background-color: #00539F"  >Execute Report
            </div>
            <div class="popupBody" style="font-size=16px; font-weight=bold;">
                <p>Would you like run this report with a comparison?</p>
            </div>
            <div class="Controls">
                <input id="btnYes" type="button" value="Yes" onclick="btnYes_Click"/>
                <input id="btnNo" type="button" value="No" onclick="btnNo_Click"/>
            </div>
        </div>
    </asp:Panel>
</asp:Content>

所以我想在弹出框中的按钮的onclick事件中添加一个事件处理程序。我知道我以前做过这个,但我找不到我的旧代码或记得如何。如果我需要插入javascript来执行此操作,那么任何指向文章的指针都会非常受欢迎,因为我在我的智慧结束!

显然我已经尝试过显而易见的事了 -

Protected Sub btnYes_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnYes.Click
End Sub

这表示'Handles子句需要在包含类型或其基类型中定义一个WithEvents变量。'

感激地收到任何帮助,如果成功,我会将其标记为答案。

1 个答案:

答案 0 :(得分:0)

您需要使用jQuery ajax,它用于从视图中调用页面方法,例如

$.ajax({
          type: "POST",
            url: "PageName.aspx/MethodName",
            data: "{}",
               contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function(msg) {
                  // Do something interesting here.
             }
             });

上面的代码应该嵌入到javascript的btn.click函数中。

此外,在google上搜索你会很容易找到很多关于使用jQuery ajax的文章。

谢谢和问候,

Nitin D. Varpe