如何防止使用javascript执行服务器端函数

How to prevent execution of serverside function using javascript?

本文关键字:执行 服务器端 函数 javascript 何防止      更新时间:2023-09-26

我正在测试一个文本框值。

如果值符合我的标准,执行一个javascript函数

其他

在代码后面执行textchanged事件。

我有一个jquery函数,使用javascript触发更改

JAVASCRIPT

function test() {
  if ($('#<%= txt.ClientID%>').val() == '1') {
      return false;
    }
};

ASP。

<asp:TextBox ID="txt" runat="Server" AutoPostBack="true" onchange="test(this)" />

VB。

Protected Sub txt_TextChanged(sender As Object, e As EventArgs) Handles txt.TextChanged
...
End Sub

当调试该函数时,明确返回false,但是textchanged事件仍然导致回发。

标记呈现为

onchange="test(this);setTimeout('__doPostBack(''ctl00$ctl00$ctl00$Master$Content$txt'','''')', 0)"

如何限制textchanged事件仅在满足某些客户端条件时执行?

尝试返回false文本框内联如下:-

function test() {
    if ($('#<%= txt.ClientID%>').val() == '1') {
        return false;
    }
    return true;
};

<asp:TextBox ID="txt" runat="Server" AutoPostBack="true" onchange="if(!test(this)) return false;" />