我有一个基于模型的简单表格。
我必须支持的功能之一是能够创建模型当前参数的 url。例如:
Form Begin
Model.Name
Model.Age
Form End
然后在javascript中如何获取:
http://Site/Controller/Action?Name=Bill&Age=45
是否有一个助手可以获取当前状态并生成一个 Url?
原因是我需要能够打开一个包含模型值的新窗口,同时保持表单和页面不变。
我有一个基于模型的简单表格。
我必须支持的功能之一是能够创建模型当前参数的 url。例如:
Form Begin
Model.Name
Model.Age
Form End
然后在javascript中如何获取:
http://Site/Controller/Action?Name=Bill&Age=45
是否有一个助手可以获取当前状态并生成一个 Url?
原因是我需要能够打开一个包含模型值的新窗口,同时保持表单和页面不变。
你应该能够在你的 javascript 中做这样的事情
var url = "@Html.Action("Action", "Controller", new { Name = Model.Name, Age = Model.Age})";
window.open(url);
使用 window.location 然后 window.open 在新窗口/页面/选项卡中打开它。例如:var myURL = window.location.href; 然后使用 window.open(myURL)
AFAIK,没有办法得到你在问什么(虽然好主意)。我赞成 NKD,因为您的问题的第二部分是关于如何在新窗口中打开浏览器(也许您已经知道如何执行此操作)。
您需要使用 JQuery/Javascript 方式来获取您想要的值。或者,您可以创建一个快速的客户端助手,在其中给它您所追求的键名,它会找到它并将其返回给您,即:
function GetValueFromForm(key)
{
return $('#' + key).val();
}
然后你称之为:
var url = '/SomeAction?name=' + GetValueFromForm('Name') + '&age=' + GetValueFromForm('Age');
或者,如果数据没有改变,那么只需在您的 javascript 中使用模型值:
var url = '/SomeAction?name=' + @Model.Name + '&age=' + @Model.Age;