簡體   English   中英

MVC Ajax dropdownlist值問題

[英]mvc ajax dropdownlist value problems

所以我在處理級聯下拉列表時遇到問題。 每次我在第一個下拉列表中選擇一個值時,都會填充第二個下拉列表,但是“從第一個下拉列表中選擇的值”將填充在第二個下拉列表的頂部。 那有意義嗎? 以下是代碼。 我不確定它是否正確附加,似乎在螢火蟲上找不到任何東西。

任何建議表示贊賞。

謝謝!!

風景:

<script type="text/javascript">
    $(function () {
        $('#<%: ViewData.TemplateInfo.GetFullHtmlFieldId("1stLevel") %>').change(function () {
            $.ajax({
                url: '<%: Url.Action("Index","2ndLevelDetails") %>?1stLevelId=' + $(this).val(),
                success: function (data) {
                    $('#<%: ViewData.TemplateInfo.GetFullHtmlFieldId("2ndLevelId") %>').html(data);
                },
                async: false
            });
        });
    });
</script>


            <div class="dropdown">
                <%: Html.DropDownList("1stLevelDetails", new SelectList(Model.1stLevel, "1stLevelId", "1stLevelDescription"))%>
            </div>

            <div class="dropdown">
                <%: Html.DropDownListFor(model => model.2ndLevelId, new SelectList(Model.NTEESecondaryCodes, "2ndLevelId", "2ndLevelDescription", Model.2ndLevelId))%>
            </div>

控制器2ndlevel返回選項列表

public string Index(int 1stLevelId)
{
    var ntee = new System.Text.StringBuilder();
    foreach (2ndLevelDetails code in 2ndLevelDetails.Find2ndLevelIds(ArgentDb, 1stLevelId))
    {
        ntee.AppendFormat("<option value=\"{0}\">{1}</option>", code.2ndLevelId, code.Description);
    }

    return ntee.ToString();
}

嘗試使用jQuery的活頁夾..

$('#<%: ViewData.TemplateInfo.GetFullHtmlFieldId("1stLevel") %>').live('change', function () {
// ... code here

自從我記得以來,我不得不使用live來綁定更改事件。.我不知道為什么。

暫無
暫無

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

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