我有一个带有asp按钮的webform,点击后需要在c#中执行一个功能。该功能不会影响页面上的任何内容,因此我不需要刷新页面。有什么方法可以阻止asp按钮进行回发?我对JavaScript一点都不熟悉所以我需要在c#中执行这个功能。当然有一种方法。我研究过但没什么作用。的CausesValidation ="假"'不起作用。 UseSubmitBehavior = false不起作用。并且也没有将OnClientClick设置为返回false。请记住,我没有使用JavaScript。谁知道怎么样?
答案 0 :(得分:1)
首先在您的页面中添加ScriptManager,
然后添加一个包含所有控件的更新面板。这样可以防止整个页面被回发。
这里举个例子
<asp:ScriptManager ID="MainScriptManager" runat="server" />
<asp:UpdatePanel ID="pnlHelloWorld" runat="server">
<ContentTemplate>
<asp:Label runat="server" ID="lblHelloWorld" Text="Click the button!" />
<asp:Button runat="server" ID="btnHelloWorld" OnClick="btnHelloWorld_Click" Text="Update label!" />
</ContentTemplate>
</asp:UpdatePanel>
答案 1 :(得分:1)
如果您不想使用ScriptManager或服务器端的东西,您可以随时使用HTML控件:
<input type="button" id="myButton" value="Do Something" onclick="doSomeFunction(); return false;" />
OR
<button id="myButton" onclick="doSomeFunction(); return false;">Do Something</button>
我确实发现通过jQuery将click事件附加到按钮元素将导致回发(至少那是我发生的事情),所以我切换到了尝试过的真实输入元素。