如何在 asp.net 中的文本框更改事件中调用 Web 方法
How to call web method on change event of textbox in asp.net
我有一个文本框。在它的输入上,我想保存它的数据,比如便签,我的意思是在 asp.net 中自动保存文本框。
我的前端代码是:
<textarea id="txtClientArea" runat="server" class="scfMultipleLineTextBox" cols="20" rows="4" onchange="onTextChange" >
我的 javascript 网络方法是:
function onTextChange(data) {
debugger;
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "StickyNote.aspx/SaveData",
data: JSON.stringify({ "data": data }),
datatype: "json",
async: false,
success: function (response) {
alert("C# method calling : " + response.d);
},
error: function (err) {
alert(err.responseText);
}
});
}
方法背后的代码是:
[System.Web.Services.WebMethod]
public static void SaveData(string data)
{
User currentUser = Sitecore.Context.User;
if (currentUser != null)
{
currentUser.Profile.SetCustomProperty("StickyNote", data);
}
}
如何让文本框数据自动保存?
您可以尝试以下方法:
$('#<%=txtClientArea.ClientID%>').on('change',function () {
var data = encodeURIComponent($(this).text());
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "StickyNote.aspx/SaveData",
data: JSON.stringify({ "data": data }),
datatype: "json",
async: false,
success: function (response) {
alert("C# method calling : " + response.d);
},
error: function (err) {
alert(err.responseText);
}
});
});
我有一个文本框。在它的输入上,我想保存它的数据,比如便签,我的意思是在 asp.net 中自动保存文本框。
我的前端代码是:
<textarea id="txtClientArea" runat="server" class="scfMultipleLineTextBox" cols="20" rows="4" onchange="onTextChange" >
我的 javascript 网络方法是:
function onTextChange(data) {
debugger;
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "StickyNote.aspx/SaveData",
data: JSON.stringify({ "data": data }),
datatype: "json",
async: false,
success: function (response) {
alert("C# method calling : " + response.d);
},
error: function (err) {
alert(err.responseText);
}
});
}
方法背后的代码是:
[System.Web.Services.WebMethod]
public static void SaveData(string data)
{
User currentUser = Sitecore.Context.User;
if (currentUser != null)
{
currentUser.Profile.SetCustomProperty("StickyNote", data);
}
}
如何让文本框数据自动保存?
您可以尝试以下方法:
$('#<%=txtClientArea.ClientID%>').on('change',function () {
var data = encodeURIComponent($(this).text());
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "StickyNote.aspx/SaveData",
data: JSON.stringify({ "data": data }),
datatype: "json",
async: false,
success: function (response) {
alert("C# method calling : " + response.d);
},
error: function (err) {
alert(err.responseText);
}
});
});