簡體   English   中英

將下拉列表的選定值作為MVC視圖中的ActionLink中的查詢字符串傳遞

[英]Pass drop down list's selected value as a query string in an ActionLink in an MVC view

我的視圖中有一個簡單的下拉列表:

@Html.DropDownList("ddlAppIds", new SelectList(ViewBag.AppIds))

在它下面,我有一個ActionLink 我想將上面下拉列表的選定值作為查詢字符串參數發送到此ActionLink

@Html.ActionLink("Next", "Index", new { id = selectedAppId })

selectedAppId僅用於我希望實現的目標。 如何在我的視圖中將下拉列表的選定值作為查詢字符串參數傳遞?

除非您恰好在頁面加載時已經選擇了值,否則MVC無法知道用戶在沒有回發的情況下進行選擇。 一旦頁面被發送到客戶端,MVC就會完成,直到下一個請求:您的Razor視圖已經呈現,並且如果沒有您通過JavaScript手動執行,則不會對DOM中的任何內容進行任何更改。

如果要根據所選值更改鏈接,則需要編寫JavaScript才能實現。 由於你正在使用MVC,我將假設jQuery支持,因為它默認包含在內:

$(document).ready(function () {
    $('#ddlAppIds').on('change', function () {
        var selectedValue = $(this).val();
        $('#IdForYourLink').prop('href', '/url/to/next/' + selectedValue);
    });
});

您需要自己找出替換所選值的最佳方法。 您可能更喜歡在當前鏈接上執行某種正則表達式,僅包含部分鏈接作為開頭的href,等等。

暫無
暫無

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

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