0

这里是我的代码:为什么我的下拉列表不提交表单?

<div class="center"> 
    <p> Choose item:</p> 
    <div class="dropdown"> 
     @using (Html.BeginForm("Start", "Home", FormMethod.Post, new { name = "form", id = "form" })) 
     { 
      @Html.DropDownListFor(x => x.SelectedId, @Model.ViewJaren, 
       new 
       { 
        onchange = "this.parentNode.form.submit()" 
       } 
      ) 
     } 
    </div> 
</div> 

一直试图得到它的工作,但不能弄明白。我得到onchangedocument.getElementById("form")一起工作。但没有价值通过。我得到一个空白页面。

+1

为什么在'onchange'前面有'@'? – Coda17 2015-04-02 12:29:17

+1

你没有提交表单*到*任何东西。没有任何动作可以发布,您将动作和控制器设置为'null' – DLeh 2015-04-02 12:31:21

+0

我编辑了代码,考虑到您的评论仍然没有进展。不知道为什么@在那里。我相应地编辑了我的帖子。 – ManyQuestions 2015-04-02 12:37:14

回答

0

为什么不把它分开。

<script> 
$(document).ready(function(){ 
    $('#@Html.IdFor(x => x.SelectedId)').change(function(e){ 
     $(this).closest('form').submit(); 
    }); 
}); 
</script> 
相关问题