2

我正在开发一个 MVC4 Web 应用程序。一切正常,但在项目结束时,我有一个新要求,我必须在近 20 个页面上的每个下拉列表旁边显示一个加号图标。

在此处输入图像描述

在上图中的项目下拉列表中,我手动添加了图标。但我想在整个项目中的每个下拉列表中添加这个图标。单击此图标后,将打开一个带有文本框的弹出窗口。用户将在此输入新项目并保存。

页面的常见结构是:

<div runat="server" id="divFormLayout" class="formLayout">
<div class="TabSectionL" style="width: 99%">
        <span class="TabSectionHeader">Item Details</span>
        <table cellpadding="4" cellspacing="4">
            <tr>
                <td>
                    Item
                </td>
                <td>
                    @if (ViewData["ItemDesc"] != null)
                    {
                        @Html.DropDownListFor(m => m.str_itemdsc, (SelectList)(ViewData["ItemDesc"]), "-Select-", new { @class = "validate[required] cairs_item_dropdown", tabindex = "1" })

                    }
                    else
                    {
                        @Html.DropDownList("str_itemdsc", new SelectList(""), "", new { tabindex = "1" })
                    }

                </td>
        </tr>
        </table>
    </div>
</div>

问题:如何在每个下拉列表旁边动态添加加号图标。

4

2 回答 2

1

像这样:

$("select").each(function(){
    $("<a class='icon or whatever'></a>").insertAfter($(this));
});
于 2013-08-20T07:57:49.737 回答
0

您可以使用一些 jquery 代码来实现这一点。

由于您的下拉菜单位于<td>标签内,您可以选择您的 DDL,然后将图标附加到其父级 - 实际上是<td>. 所以,把这段代码放在你的_Layout

<script>
    $(document).ready(function () {
        $("select").parent().append("<img src='...' />");
    });
</script>
于 2013-08-20T08:07:39.367 回答