C# 单击asp:按钮调用Ajax JQuery时,不会执行CommandArgument和CommandName

C# 单击asp:按钮调用Ajax JQuery时,不会执行CommandArgument和CommandName,c#,asp.net,ajax,C#,Asp.net,Ajax,下面是我的文本框按钮点击验证代码。i、 例如,若文本框的值已保存在数据库中,则显示警报,否则正常按钮事件应起作用。为此,我尝试了以下代码: Default.aspx页面 <asp:Label ID="lblGuidId" runat="server" Text='<%# Bind("RequestID") %>'></asp:Label> <asp:TextBox ID="txtBarcodeNumber" runat="server" MaxLengt

下面是我的文本框按钮点击验证代码。i、 例如,若文本框的值已保存在数据库中,则显示警报,否则正常按钮事件应起作用。为此,我尝试了以下代码:

Default.aspx页面

<asp:Label ID="lblGuidId" runat="server" Text='<%# Bind("RequestID") %>'></asp:Label>
<asp:TextBox ID="txtBarcodeNumber" runat="server" MaxLength="11" Width="230px" Text='<%# Bind("BarcodeNo") %>' Display="None"></asp:TextBox>

<asp:Button ID="btnBar" runat="server" Text="Save" CommandName="Update"
OnClientClick="EnableDdlCompany();saveButtonClick();" 
CommandArgument="Save" return false;"/>

当我单击按钮(
btnBar
)时,这个Ajax JQuery工作,但是在这个验证检查之后,我希望按钮应该执行其他事件,比如CommandArgumentCommandNameOnCLientClick
,但是当我的IF条件转到else部分时,不会触发这些事件
请建议我应该对代码进行哪些更改,以使其按预期工作
请注意,我无法更改按钮上定义的事件。我对asp.net非常陌生
提前谢谢。

您从未为btnBar定义过OnClick服务器端事件。目前,它只执行客户端代码,不会影响服务器端代码。如果希望它基于jQuery调用的结果执行,那么必须执行类似于uu doPostBack(“btnBar”)的操作

您永远不会为btnBar定义OnClick服务器端事件。目前,它只执行客户端代码,不会影响服务器端代码。如果希望它基于jQuery调用的结果执行,那么必须执行类似于uu doPostBack(“btnBar”)的操作

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript" src="http://cdn.jsdelivr.net/json2/0.1/json2.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("[id*=btnBar]").bind("click", function () {

                var chk = {};
                chk.requestID = $("[id*=lblGuidId]").text();
                alert(chk.requestID);
                chk.barCode = $("[id*=txtBar]").val();
                alert(chk.barCode);

                $.ajax({
                    type: 'POST',
                    url: "ChatBoxDemo.aspx/SaveUser",
                    data: '{chk: ' + JSON.stringify(chk) + '}',
                    contentType: 'application/json; charset=utf-8',
                    dataType: 'json',
                    success: function (data) {

                        alert(JSON.stringify(data));

                        var val = data.d;
                        alert(val);

                        if (val == true) {
                            alert("Barcode No. alredy exist");  
                        }
                        else {
                            //normal function
                        }
                    },
                    error: function (data) {
                        alert(data.responseText);
                    },
                });
                return false;
            });
        });       
    </script>
public static bool IsValidBarcodeTest(Guid? requestID, string barCode)
    {
        bool result = false;

        string strcon = ConfigurationManager.ConnectionStrings["MasterDB"].ConnectionString;
        SqlConnection con = new SqlConnection(strcon);

        SqlCommand cmd = new SqlCommand("Invoice.usp_tbl_Request_Select_CheckDuplicateBarcode_Test", con);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("@RequestID", requestID);
        cmd.Parameters.AddWithValue("@BarcodeNo", barCode);
        cmd.Connection = con;
        con.Open();
        result = Convert.ToBoolean(cmd.ExecuteScalar());
        con.Close();

        return result;
    }

    public class Check
    {
        public Check() { }

        private Guid? requestID;
        private string barCode;

        public Guid? RequestId
        {
            get { return requestID; }
            set { requestID = value; }
        }

        public string BarCode
        {
            get { return barCode; }
            set { barCode = value; }
        }
    }

    [WebMethod]
    [ScriptMethod]
    public static bool SaveUser(Check chk)
    {
        bool a = false;
        a = IsValidBarcodeTest(chk.RequestId, chk.BarCode);
        return a;
    }