javascript - 是/否 javascript 函数询问问题,即使它不应该

标签 javascript asp.net webforms

我有一个对服务器名称运行验证的插入表单,如果存在一个具有该名称的服务器,它应该触发 javascript 函数并说“这个服务器已经存在,你想激活吗它?”是/否如果是它做一件事如果没有它做另一件事,当我对此进行试验时我注意到即使没有具有该名称的服务器它也会触发事件不少,我离开这里前端和服务器端代码,谢谢。

protected void btn_insert_server_Click1(object sender, EventArgs e)
    {
            
           DataAccess da = new DataAccess();
           DataTable dt = new DataTable();

        gridServers.DataSource = dt;
        gridServers.DataBind();

        string ServerName = ServerNameADD.Value.ToString();
           
              dt = da.VerifyServer(ServerName);

              if (dt.Rows.Count == 0)
              {
                da.Insert_Server(ServerName);
                dt = da.GetServers();
                gridServers.DataSource = dt;
                gridServers.DataBind();

                string message = "Servidor Inserido com sucesso.";
                string script = "window.onload = function(){ alert('";
                script += message;
                script += "')};";
                ClientScript.RegisterStartupScript(this.GetType(), "SuccessMessage", script, true);

              }
            else
            {
                string confirmValue = Request.Form["confirm_value"];
                if (confirmValue == "Sim")
                {
                    da.UpdateServerToActive(ServerName);
                    this.Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Servidor Ativado')", true);
                    da.GetServers();
                }
                else
                {
                    this.Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Status do servidor inalterado')", true);
                    da.GetServers();
                }
            }
    }

这是服务器端编码。

<asp:button Text="Insert" runat="server" OnClientClick="Confirm1()" name="txtInsertService" ID="btn_insert_service" OnClick="btn_insert_service_Click" ></asp:button>

这是触发服务器端编码的按钮,然后

function Confirm() {
        var confirm_value = document.createElement("INPUT");
        confirm_value.type = "hidden";
        confirm_value.name = "confirm_value";
        if (confirm("Este Servidor já existe,mas encontra-se desativado,deseja ativa-lo?")) {
            confirm_value.value = "Sim";
        } else {
            confirm_value.value = "Não";
        }
        document.forms[0].appendChild(confirm_value);
    }

这是它自己的 javascript 函数。 如果有人发现我做错了什么,请告诉我。

最佳答案

尝试如下操作:

后端 - 创建网络方法:

[WebMethod(EnableSession = true)]
public static string GetServerSideValue()
{
    return "Done";
}

前端 - 使用下面的 Ajax 调用服务器端网络方法:

<button type="button" class="btn btn-primary" id="btnSubmit">Get Value</button>
$("#btnSubmit").click(function () {
        debugger;        

        $.ajax({
            type: "POST",
            url: "/YourFileName.aspx/GetServerSideValue", //Here you call the method
            data: JSON.stringify({ }),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                alert(data);
            },
            error: function (result) {
                alert("Error");
            }
        });
    });

N.B:请参阅此处了解正确的 Ajax 调用 - Ajax Call with ASP.NET

关于javascript - 是/否 javascript 函数询问问题,即使它不应该,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68114443/

相关文章:

javascript - jquery.mobile,与其他页面隔离等

c# - 如何在下拉列表中使用 C# 枚举

javascript - jQuery 仅在附加 jQuery 时触发 keyup 事件

javascript - 使用带有代码拆分的汇总时,有什么方法可以保留包的目录结构?

javascript - Redux:连接函数中的对象解构?

html - 根据条件隐藏 ascx 标记

javascript - 如何使图像适合板内

html - Gridview 宽度和对齐方式

asp.net - 如何使用Customvalidator检查号码

c# - 如何在 ASP.NET Identity (WebForms) 中使用我自己的数据库