我在aspx中有以下来源:

<div>
    <asp:HiddenField ID="hidValue" runat="server" />
    <asp:Button runat="server" ID="hidButton" OnClick="hidButton_Click"    />
    <script type="text/javascript">
        function ExtendPanel(PanelNumber) {
            var hidValue = document.getElementById('<%=hidValue.ClientID %>');
            hidValue.value = PanelNumber;

            document.getElementById('<%=hidButton.ClientID%>').fireEvent("onclick");
        }
    </script>
</div>

在后面的代码中,我声明了以下C#函数:
protected void hidButton_Click(object sender, EventArgs e)
{
    int PanelNumber = int.Parse(hidValue.Value);
    ... do something with PanelNumber ...
}

当我使用鼠标单击按钮时,通常会执行“hidButton_Click”功能。
但是,执行javascript函数ExtendPanel(PanelNumber)时,似乎触发了click事件,但未执行该函数。

最佳答案

取代这个

document.getElementById('<%=hidButton.ClientID%>').fireEvent("onclick");


__doPostBack('hidButton','OnClick');

08-25 13:36