YES/NO javascript 功能问问题,即使它不应该
YES/NO javascript function asking the question even tho it shouldn´t
我有这个对服务器名称运行验证的插入表单,如果存在具有该名称的服务器,它应该触发 javascript 函数并说“此服务器已存在,你想激活它吗?” yes/no 如果是,它会做一件事,如果不是,它会做另一件事,当我对此进行试验时,我注意到即使没有具有该名称的服务器,它也会触发事件,我会离开这里前端和服务器端代码,谢谢。
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 函数。
如果有人发现我做错了什么,请告诉我。
尝试如下操作:
后端 - 创建 web 方法:
[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 函数并说“此服务器已存在,你想激活它吗?” yes/no 如果是,它会做一件事,如果不是,它会做另一件事,当我对此进行试验时,我注意到即使没有具有该名称的服务器,它也会触发事件,我会离开这里前端和服务器端代码,谢谢。
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 函数。 如果有人发现我做错了什么,请告诉我。
尝试如下操作:
后端 - 创建 web 方法:
[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