gpt4 book ai didi

c# - 从 javascript 函数调用 asp.net 函数

转载 作者:行者123 更新时间:2023-12-03 12:19:31 25 4
gpt4 key购买 nike

我想从传递字符串值的 javascript 函数调用 asp.net 函数。

这是 ASP.NET 函数:

[System.Web.Services.WebMethod]     
public static string InsertData(string ID)
{
string source = "Data Source=(LocalDB)\v11.0;Integrated Security=True;Connect Timeout=30";
using(SqlConnection con = new SqlConnection(source))
{
using (SqlCommand cmd = new SqlCommand("Insert into Book (Name) values(@Name)", con)) {
con.Open();
cmd.Parameters.AddWithValue("@Name", ID);
cmd.ExecuteNonQuery();
return "True";
}
}
}

所以我想从 javascript 函数调用这个函数,它将字符串值“ID”传递给 asp.net 函数。

这是我使用的 JavaScript 函数

 function CallMethod() {
PageMethods.InsertData("hello", CallSuccess, CallError);

}

function CallSuccess(res) {
alert(res);
}

function CallError() {
alert('Errorrr');
}

我从这里调用它

<body>
<header>
</header>
<div class="table" id="div1" > </div>
<form id="Form1" runat="server">
<asp:Button id="b1" Text="Submit" runat="server" onclientclick="CallMethod();return false;"/>
<asp:ScriptManager enablepagemethods="true" id="ScriptManager1" runat="server"></asp:ScriptManager>
</form>

</body>

所以我有一个按钮和 onClick 我想将“Hello”行添加到我的表中,但没有任何反应并且 CallError 函数调用

最佳答案

您可以通过 javascript 中的 ajax 调用 来调用 Web 方法。您需要为要调用的函数设置url参数值,并且可以在数据参数中以json格式传递值。像这样的数据:“{ParamterName:'VALUE'}

 <script type="text/javascript">
$(document).ready(function () {
$.ajax({
type: "POST",
url: "YourPage.aspx/YouPageMethod",
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('Method Called Sucess fully');
},
error: function (result) {
alert("error " + result);
}
});
});
</script>

或者

您可以使用PageMethod调用Eample

 <script type="text/javascript">
function callInsert() {
PageMethods.InsertDate(id, OnSucceeded, OnFailed);
}

function OnSucceeded(response) {
alert(response);
}
function OnFailed(error) {
alert(error);
}


/* call this javascript function */
callInsert();

</script>

关于c# - 从 javascript 函数调用 asp.net 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24509849/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com