0

所以我需要附加和取消附加包含所选选项值的 div,问题是首先显示选择值的方法是 via。一个使用 Smarty PHP 模板的 for-each 循环,我找不到任何关于如何使用它来实现它的文档。

我尝试过的:正如您将在下面看到的,我尝试在模板文件中创建一个 JavaScript 变量,但它只返回所选第一个选项的值。我无法弄清楚为什么我只能从循环中获取第一个值。

例如,如果我在选择“A”和“B”中有两个项目,则在选择值选项时,我总是只会收到“A”作为值。

Smarty 模板代码:

<select class="my_select" name="vlans_{$NetworkDTO->id}[]">
    {foreach from=$arrNetworkDTO item=NetworkDTO name=arr}
    <option class="addOvmCardList" id="addNameDisk{$strIdTpl}" value="{$NetworkDTO->name|escape}">{$NetworkDTO->name}</option>
    {/foreach}
</select>

jQuery代码:

$('a.addListOVM').click(function(){

    $(".my_select").change(function() {

        $('.addCardOVM').append(
              '<div class="divform"><label>' + $(this).val() + '</label>' +
              '<a href="">-</a></div>'
                );              
    });                             

});

任何帮助表示赞赏。

4

1 回答 1

2
<select id="my_select">
  {foreach from=$arrNetworkDTO item=NetworkDTO}
   <option value="{$NetworkDTO->name|escape}">{$NetworkDTO->name}</option>
  {/foreach}
</select>

<script>
  $("#my_select").change(function() {
    $(".addCardOVM").append("<div>" + $(this).val() + "</div>")
  });
</script>

编辑:要在按钮单击时获取选定选项的值:

$('a.addListOVM').click(function(){


        $('.addCardOVM').append(
              '<div class="divform"><label>' + $(".my_select:selected").val() + '</label>' +
              '<a href="">-</a></div>'
                );

});
于 2013-01-09T10:28:21.087 回答