我的 MVC 视图页面上有一个。当所选索引更改时,我使用 JQuery 过滤网格。
在页面底部,我有一个操作链接。我想将此值发布到操作链接指向的控制器。
问题是,显然盒子的价值是可以改变的。
如何使用操作链接发布动态变化的数据?
我的 MVC 视图页面上有一个。当所选索引更改时,我使用 JQuery 过滤网格。
在页面底部,我有一个操作链接。我想将此值发布到操作链接指向的控制器。
问题是,显然盒子的价值是可以改变的。
如何使用操作链接发布动态变化的数据?
我想我会做的是使用表单而不是操作链接。然后,您的 jQuery 将更新表单内与查询参数相对应的一些隐藏字段。然后,您的“链接”(可能是一个按钮)将有一个提交表单的 onclick 处理程序。如果您关心 url - 我可以看到您可能在哪里 - 只需使用正确的路由参数将您的控制器操作重定向到自身。
或者,您可以在选择更改时构造和替换 ActionLink 上的 href。这将涉及在视图中维护代码,以了解您的路线是如何构建的。
注意:下面的示例可能会更好地使用包裹在下拉列表本身的表单并简单地在选择更改时提交,但模式是我感兴趣的描述。
<script type="text/javascript">
$(document).ready( function() {
$('#formLink').click( function() {
$(this).parent('form').submit();
return false;
});
$('#PageSizeMenu').change( function() {
$('#PageSize').val( $(this).val() );
})
});
</script>
<%= Html.DropDownList("PageSizeMenu", ... ) %>
<% using (Html.BeginForm( "List" )) { %>
<a id="formLink" href="some-reasonable-link-for-non-javascript">Go</a>
<%= Html.Hidden("PageSize") %>
<% } %>