簡體   English   中英

按鈕單擊事件未將輸入字符串傳遞給MVC控制器方法

[英]Button Click Event not Passing input String to MVC Controller Method

我有以下視圖HTML

<input id="txt" type="text">
<button class="btn btn-primary" id="button">Upload</button>

和腳本

<script type="text/javascript">
    $("#button").click(function () {
        var txtVal = $("#txt").val();
        window.location = "@Url.Action("Upload", "Tools")" + "/" + txtVal;
    });
</script>

我的控制器方法是

[AllowAnonymous]
public async Task<ActionResult> Upload(string fileName)
{
    string path = @"C:\GambitTests\blue-g-logo.jpg";
    // Do stuff.
    return RedirectToAction("Index", "Tools");
}

此方法將觸發,但是我沒有從輸入框中獲取文本,並且fileNamenull

我在做什么錯,如何將文本從輸入控件傳遞給此方法?

謝謝你的時間。

在查詢字符串中傳遞參數的默認語法是?paramName = value,因此在您的情況下,您需要將JavaScript更改為:

window.location = "@Url.Action("Upload", "Tools")" + "?fileName=" + txtVal;

或者,將參數名稱更改為id,它將按您期望的方式工作(由默認RouteConfig提供)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM