【问题标题】:GET different url based on inputbox根据输入框获取不同的 url
【发布时间】:2012-05-28 21:39:20
【问题描述】:

我正在使用像controller/action/id 这样的网址的asp.net MVC 模式。如果我直接导​​航到 url,这很好用。

我希望有一个页面,用户可以在其中输入id 并单击一个按钮(或链接),将他们带到正确的 url。

我是否需要使用某些客户端脚本根据输入以某种方式创建指向不同 URL 的操作链接?
或者我可以呈现一个GETs 正确网址的表单吗?

我正在做的事情不寻常吗?我应该做点别的吗? (请注意,id 的数量太长,无法列出)。

【问题讨论】:

  • 用一些 JavaScript 做这个客户端可能比在你的代码隐藏中更容易。
  • 最简单的方法是发布一个表单,然后根据输入重定向。除此之外 - Javascript(或 jQuery,如果你喜欢这个框架)来最小化流量(重定向和帖子)。

标签: c# asp.net-mvc model-view-controller asp.net-mvc-2 asp.net-mvc-routing


【解决方案1】:

假设您设置了默认路由,您可以执行以下客户端脚本(但请确保它在同一个文件中):

var yourLink = '@Url.Action("controller", "action")';
//should output controller/action/

然后假设你的按钮有 id myButton 并且文本框有 id myTextBox,你可以这样做 jQuery:

$("#myButton").click(function () {
    location.href = yourLink + $("#myTextBox").val();
    //should output controller/action/5 for example, although you might
    //want to make sure they've put a "correct" value in here
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-22
    • 2011-07-11
    • 2018-03-07
    • 2014-12-05
    • 2017-12-18
    • 1970-01-01
    • 2012-09-16
    相关资源
    最近更新 更多