在我的一个视图中,我有一个帮助链接,它显示了一个jQuery UI对话框,描述了该字段的用途。MVC帮助链接Url.Action不再解决
我的观点:
@using (Html.BeginForm("OptionalFields", "Home"))
{
@Html.HiddenFor(m => m.ConfigID)
@Html.LabelFor(m => m.CampaignName)
@Html.TextBoxFor(m => m.CampaignName) <a href="#" class="helplinkcampaign">help</a>
@Html.LabelFor(m => m.LeadStatus)
@Html.TextBoxFor(m => m.LeadStatus) <a href="#" class="helplinkstatus">help</a>
@Html.LabelFor(m => m.UserOwnerName)
@Html.TextBoxFor(m => m.UserOwnerName) <a href="#" class="helplinkowner">help</a>
<p><input type="submit" id="optionalfields" value="Save" /></p>
}
我在上面的链接标签每个班一个jQuery的事件处理程序。例如:
$(document).on("click", ".helplinkcampaign", function() {
var url = '@Url.Action("Campaign", "Home")';
$("#divPopup").dialog('option', 'title', 'Campaign Name Help');
$.get(url, function (data) {
$("#divPopup").html(data);
$("#divPopup").dialog("open");
});
});
正如你所看到的,我解析URL到控制器的ActionResult并下载查看的内容,并显示在一个jQuery用户界面对话框的内容。
此页面正在进行中,但这是昨天和今天已停止的工作。我得到的错误是:
Failed to load resource: the server responded with a status of 404 (Not Found)
而且在控制台旁边的链接是
http://localhost:12345/Home/@Url.Action(%22Campaign%22,%20%22Home%22)
,而不是
http://localhost:12345/Home/Campaign
我知道我可以手动设置URL变量竞选在这种情况下,但我更愿意让MVC解决它。
这有什么理由停止解决?
是的,看起来你是对的。 – andrewb