如何在页面加载期间添加带有图像的选项以供选择? - javascript

现在,我有一个dropDownList,它是一个带有“ Option”元素的“选择” HTML控件,已经是runat =“ server”,代码如下:

<select name="webmenu" id="webmenu" class="fWidth" runat="server">
  <option value="calendar" data-image="TempImages/AldiBl.png">Aldi</option>
  <option value="shopping_cart" data-image="TempImages/Norma.png">Norma</option>
  <option value="cd" data-image="TempImages/AldiBl.png">Aldi</option>
  <option value="email" selected="selected" title="TempImages/AldiBl.png">Aldi</option>
  <option value="fam" data-image="TempImages/AldiBl.png">Aldi</option>
  <option value="games" data-image="TempImages/AldiBl.png">Aldi</option>
</select>

我可以从后面的代码访问带有元素的列表,但是我的问题是我需要动态添加元素,上面的只是一个示例,为此,我有一个添加元素的javascript函数,这里是:

function showAccounts(names, images) {
  var namesArray = names.split(",");
  var imagArray = images.split(",");

  for (var ro = 0; ro < namesArray.length; ro++) {
    $('#menuName').append($("<option value='" + namesArray[ro] + "' data-image='" + imagArray[ro] + "'>" + namesArray[ro] + "</option>"));
  }
  return false;
}

元素很好地添加和显示,但是当从后面的代码访问它们时,它们不存在于列表中,我可以理解,因为它们是在客户端创建的,所以这是我的问题,如何将带有图像的元素添加到“选择”元素从后面的代码,以便我可以从后面的代码访问它们?

提前谢谢了。

javascript大神给出的解决方案

尝试这个:

    private ListItem CreateListItem(string value, string text, string dataImage) {
        ListItem li = new ListItem() { Value = value, Text = text };
        li.Attributes["data-image"] = dataImage;
        return li;
    }

    protected void Page_Load(object sender, EventArgs e) {
        List<ListItem> lis = new List<ListItem>();
        lis.Add(CreateListItem("test1", "blah1", "test.png"));
        lis.Add(CreateListItem("test2", "blah2", "test2.png"));
        lis.Add(CreateListItem("test3", "blah3", "test3.png"));

        if (!IsPostBack) {
            foreach (ListItem li in lis)
                webmenu.Items.Add(li);
        }
        else { 
            // persist custom attributes 
            for (int i = 0; i < webmenu.Items.Count; i++)
                webmenu.Items[i].Attributes["data-image"] = lis[i].Attributes["data-image"];
        }
    }

在回发时,您可以使用webmenu.SelectedItem.Value和webmenu.SelectedItem.Attributes [“ data-image”]检索值

淘汰赛在金字塔中的行为不正确 - javascript

我正在使用Pyramid构建一个Webapp,但是Knockout的行为有所不同。我有一个表格: <div data-bind="with: $root.itemToAdd" style="display: none;"> <form data-bind="submit: $root.add…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …

PHP stringID无法从回显中读入onclick - javascript

我有一个音频播放器,可以在HTML中正常工作,但是当我从PHP回显调用时,似乎没有得到div ID的名称,因此它无法播放我的音频。这是我的代码:// Show audio if ($sObj->get('audio') != null) { $sAudio = $sObj->get('audio'); $a…

在php中单击按钮添加表行并设置字段值 - javascript

我有一个表单,必须在单击按钮时添加表行。这是我必须动态添加的表行:(addProdToGroup.php)<tr style="text-align: center;" id="products"> <td><?php $j ?></td> <td><s…

如果复选框切换复选框已选中,则在切换div中输入必填字段 - javascript

我使用脚本用JavaScript切换了一些div。如果要选中复选框以显示toogle div,我想在toogle div中设置一些“必填”输入字段。有人能弄清楚吗?那是工作吗?function show(id) { if(document.getElementById) { var mydiv = document.getElementById(id); m…