与JavaScript生成的HTML交互

时间:2014-07-09 16:13:10

标签: javascript jquery html json select

使用javascript,我从JSON文件中获取数据并将其放入HTML select元素中。 JSON文件中的每个项目都在select中的不同选项元素中。

我希望现在能够在HTML输入元素中显示用户选择的选项。我认为这可以使用此代码:

<script>
$( "select" )
  .change(function() {
    var str = "";
    $( "select option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    $( "div" ).text( str );
  })
  .trigger( "change" );
</script>

我认为我的问题是我从javascript生成的HTML无法识别。有没有办法让这项工作成功?

由于

1 个答案:

答案 0 :(得分:1)

是的,如果您正在以动态方式生成选择,则需要进行事件委派。

变化:

$( "select" ).change(...

要:

$(closestParent).on("change", "select", function()...

“nearestParent”是选择中最接近的元素,它不会被动态生成(你甚至可以使用“body”,它会起作用)