如何在asp.net MVC 3使用@ html.actionlink来传递文本框的值(How to

2019-06-25 23:24发布

How to Pass value from text using @html.actionlink in asp.net mvc3 ?

Answer 1:

而不是通过使用@ Html.actionlink你的价值,尝试了jQuery的文本框的值传递给控制器​​:

$(function () {
    $('form').submit(function () {
        $.ajax({
            url: this.action,
            type: this.method,
            data: { search: $('#textboxid').val()},
            success: function (result) {
                $('#mydiv').html(result);
            }
        });
        return false;
    });
});

此代码将您的文本框的值张贴到控制器,并返回,这将在div“mydiv”要加载的输出结果。



Answer 2:

答案没有在这里真正发挥作用。 接受答案不刷新页面作为一个正常的行动将链接; 其余根本没有在所有的工作还是要你放弃你的问题的说明,并使用退出ActionLink

MVC3 / 4

您可以使用htmlAttributes中的ActionLink方法做你想要什么:

Html.ActionLink("My Link Title", "MyAction", "MyController", null, new { onclick = "this.href += '&myRouteValueName=' + document.getElementById('myHtmlInputElementId').value;" })

MVC5

下面的错误已被报道,但我还没有证实此事:

检测到潜在危险的Request的值



Answer 3:

从客户端,你可以使用HTML表单服务器传递数据:

  @using (Html.BeginForm(actionName,controllerName)) {
    <input type="text" name="myText"/>
    <input type="submit" value="Check your value!">
}

一定要抓住你的控制器的方法内会将myText的变量



Answer 4:

您可以使用此代码(YourValue = TextBox.Text)

Html.ActionLink("Test", new { controller = "YourController", action = "YourAction", new { id = YourValue }, null );

public class YourController : Controller
{
        public ActionResult YourAction(int id)
        {
            return View("here your value", id);
        }
}


文章来源: How to Pass textbox value using @html.actionlink in asp.net mvc 3