[英]Call C# method on button click using JavaScript/jQuery
我正在尝试使用JavaScript / jQuery函数在单击按钮时调用C#函数。
我经历了类似的问题及其解决方案,但没有一个适合这种情况。 我的C#函数不返回任何内容。 它是一个从任务计划程序触发作业的功能。 有没有其他方法可以编写JavaScript函数,而该函数不返回任何内容?
下面是代码。
HTML:
<button id="btnClick" runat="server" EnablePageMethods="true">Replay</button>
JavaScript的:
$(document).ready(function() {
$(".btnClick").on('click', function() {
$.ajax({
async: true,
url: "Home/ABVReplay",
cache: false,
});
console.log("Replayed!");
});
});
C#:
[WebMethod]
public void ABVReplay()
{
using (TaskService tasksrvc = new TaskService("<server.name>", "<username>", "<domain>", "<password>"))
{
Task task = tasksrvc.FindTask("<taskName>");
task.Run();
}
}
如果我仅在控制台应用程序中使用C#代码,则作业将运行。 因此,就没有连接/登录问题。
控制台应用程序代码:
using System;
using Microsoft.Win32.TaskScheduler;
class Program
{
static void Main(string[] args)
{
using (TaskService tasksrvc = new TaskService("<server.name>", "<username>", "<domain>", "<password>"))
{
Task task = tasksrvc.FindTask("<taskName>");
task.Run();
}
}
}
您的jquery选择器需要更改
$("#btnClick")
代替
$(".btnClick")
并确保您的通话网址正确。
#
选择html标签id
.
选择html标签class
.
代表jquery class
, #
代表id
,您必须替换此代码,并且应该可以工作。
$(document).ready(function () {
$("#btnClick").on('click', function () {
$.ajax({
async: true,
url: "Home/ABVReplay",
cache: false,
});
console.log("Replayed!");
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.