0

VS プロジェクトに 3 つのドロップダウン リストを持つビューがあり、そのうちの 2 つはカスケードされており、親コントロールの変更を反映する必要があります。私が持っているワークフローは、静的な URL 呼び出しには最適ですが、データを動的に追加する必要があり、うまくいきません。以下は、コードの動作中の静的セクションであり、動的に動作させる試みの私の多くの反復の 1 つです。

必要に応じて、以下のデータ階層の例を降順で示します:項目 (例: 食品)、種類 (例: 果物)、名前 (例: バナナ)

任意の入力に感謝します。

作業静的コード:

    function dynamicTypeList() {
       $.ajax({
           url: '@Url.Action("", "api/types/1")',

           success: function (data) {
               $("#Type_Id").empty();
               $("#Name_Id").empty();
               $("#Type_Id").append("<option value>Select Type (NEW)</option>");
               $("#Name_Id").append("<option value>Select Name (NEW)</option>");
               for (var i in data) {
                   $("#Type_Id").append("<option value='" + (i + 1) + "'>" + $(data)[i] + "</option>");
               }
           }
       });
   };

壊れた動的コード:

    function dynamicTypeList() {
       selItem = $("#Item_Number").val();
       console.log(selItem);
       $.ajax({
           url: '@Url.Action("", "api/types/" + selItem)',

           success: function (data) {
               $("#Type_Id").empty();
               $("#Name_Id").empty();
               $("#Type_Id").append("<option value>Select Type (NEW)</option>");
               $("#Name_Id").append("<option value>Select Name (NEW)</option>");
               for (var i in data) {
                   $("#Type_Id").append("<option value='" + (i + 1) + "'>" + $(data)[i] + "</option>");
               }
           }
       });
   };
4

1 に答える 1

0

「api」がコントローラーで「types」がアクションであると仮定して、url 変数を次のように置き換えてみてください。

url: '@Url.Action("types", "api")' + sellItem,

SellItem は JavaScript 変数であり、完全にクライアントにとどまる必要があります。または、この手法を使用して、内で渡す自然な URL パラメーターを使用できますUrl.Action

@URL.Action() 内で JavaScript 変数にアクセスする方法

于 2017-01-09T14:42:01.017 に答える