我在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');