使用 jQuery $.ajax 调用另一个控件的操作
Call action of another control using jQuery $.ajax
我有两个控制器,C1和C2。
C2 有一个名为 M2 的方法,它返回一个JsonResult
。
现在我使用调用$.ajax
从视图 V2 调用方法 M1,但我想 C2/M2 的相对路径无法正常工作。
$.ajax({
type: "GET",
url: "/C2/M2",
success: function (data) {
alert(data);
}
});
通知:
视图 V1 使用控制器 C1
渲染这个电话有什么问题?
public class C1 : Controller
{
public ActionResult Package(object Id)
{
return View("PackageO");
}
}
public class C2: Controller
{
public JsonResult SelectAll()
{
return Json(_rep.SelectAll(), JsonRequestBehavior.AllowGet);
}
}
在视图"PackageO"中的jQuery ready()
下,我正在使用IIFE
$(function () {
var resultant = "";
$.ajax({
type: "GET",
url: "./C2/SelectAll",
//url: "@Url.Action('SelectAll', 'C2')",
done: function (data) {
alert("success");
},
fail: function (ex) {
alert("fail");
}
});
});
你永远不应该在 MVC
中硬编码 URL。
请改用@Url.Action
.
url: '@Url.Action("FunctionName", "ControllerName")',
如果这不能解决您的问题,请告诉我们您遇到的错误类型。
此外,为了您的理智,请使用 fail 方法。
$.ajax("http://url")
.done(function() {
alert("success");
})
.fail(function() {
alert("error");
})
最后一点,success
从jQuery 1.8开始被弃用;你应该改用done
。
相关文章:
- 音频控件在mouseover上显示,在mouseout上淡出
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- Windows形成web浏览器控件和Javascript更改的DOM
- 如何将javascript事件从web浏览器wpf控件发送到wpf的c#代码
- 如何更改文本框控件的不透明度值
- 所有控件的组合框
- 创建一个方法,通过一个窗口进行迭代并获取Titanium中的所有控件
- 关闭按钮(右上 X)以执行类似于控件的操作
- 将jQuery操作应用于特定控件
- 为多个操作创建ASCX控件
- 操作无法使用自定义控件上的呈现属性集,该控件包含操作按钮
- 如何在对用户控件执行操作后调用 Web 服务
- 如何从用户输入的文本框中从 Html 操作链接控件捕获传递多个值并发送到操作方法
- 使用 Java 脚本操作 asp.net 控件
- 使用 jQuery $.ajax 调用另一个控件的操作
- 通过Javascript操作HTML控件时的良好做法
- 如何在 asp.net 中创建多视图控件并在运行时对其进行操作
- 当用户从移动通知控件中按下播放/暂停键时,我如何重写默认操作
- 如何根据用户对用户控件的操作在表单上启用控件,而不需要发回