Passing html textbox value as a parameter to contr

2020-05-06 03:18发布

I want to pass the Html.Textbox value to a controller from anchor tag, so that I can search the value passed to a controller. Please tell me how can I achieve this.

<a  href="@Url.Action("Index", "Home", new {  })">@p</a>

public ActionResult Index(string String)
        {


        }

@Html.TextBox("String")

3条回答
相关推荐>>
2楼-- · 2020-05-06 03:43
@using (Html.BeginForm("Index", "Home", null, FormMethod.Post, new {@id = "my-form"}))
{
    @Html.TextBox("String")
}

<a href="javascript:document.getElementById('my-form').submit();>@p</a>

You can use FormMethod.Post or FormMethod.Get. The latter will append ?String= to the url.

查看更多
你好瞎i
3楼-- · 2020-05-06 03:58

You don't have to use jQuery. If you're doing a HttpPost, you just need the "name" of the textbox.

On your page:

@using (Html.BeginForm("Index", FormMethod.Post)) {
    @Html.TextBox(string.Empty, new { name = "textbox" })

    <input type="submit">Submit</input>
}

Then in your controller:

[HttpPost]
public ActionResult Index(string textbox) {
    // The name of the string parameter must match the name given to the TextBox element on the page.
}
查看更多
我只想做你的唯一
4楼-- · 2020-05-06 04:05

use jquery

@Html.TextBox("String", null, new { @class="txtString" })
<a  href="@Url.Action("Index", "Home", new {  })" class="linkAction">@p</a>

then in your script

$('.txtString').on('blur', function(){
    $('.linkAction').attr('src', '@Url.Action("Index", "Home", new { text = "----" })'.replace("----", $('.txtString').val()));
});
查看更多
登录 后发表回答