Javascript将文本框的值添加到listboxfor

时间:2013-07-30 16:29:28

标签: jquery asp.net-mvc razor

我有以下内容:

<script type="text/javascript" src="/Scripts/jquery-1.8.2.js"></script>
<script type ="text/javascript">

    $(function() {
        $('#AddDirector').click(function () {
           $('#VideoLanguageDirector').append(
               new Option($('input[name=Director]').val()));
        });
    });    

</script>
<div class="editor-field">
    @Html.TextBox("Director")
</div>
<div>
    <input type="button" name="AddDirector" value="Add Director" id="AddDirector" />
</div>
<div class="editor-field">
    @Html.ListBoxFor(model => model.SelectedLanguage.VideoLanguageDirector, Model.SelectedLanguage.VideoLanguageDirector.Select(d => new SelectListItem() { Text = d.Name, Value = d.Name }))
</div>

我想要做的是在文本框中点击“添加”,文本框中的文字会插入listboxfor

现在javascript事件不会触发。

1 个答案:

答案 0 :(得分:0)

您可以在浏览器中查看开发人员工具吗?

我很确定您的列表框未命名为#VideoLanguageDirector

我认为它的名称为#SelectedLanguage.VideoLanguageDirector,并确保使用正确的jquery选择器。

#.之间存在差异,第一个是ID选择器,第二个是类选择器。

如果您使用@Html.TextBox('Director'),则该文本框的名称不一定是ID。

你可以验证这一切吗?