微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在JavaScript的OPTION中放入多个参数?

我通过PHPsql中创建了一个表,该表具有3列.我试图以这种方式将值放入SELECT下拉列表中:

>第一列将在OPTION的值中(用于传递POST).
>第二列将显示在OPTION中.
>第三列将被隐藏并停留在下拉列表的每一行,因此,当用户从下拉列表中选择一个选项时,隐藏列将出现在其他div中.

例如,如果表是:

col1  col2  col3
-----------------
1     Joe   Key st.
2     Matt  Link st.

用户选择Joe时,Key st.将在单独的div中显示,并且在用户按下Enter键之后,值1将通过POST发送.

这是我到目前为止所得到的:

$('.foo3').on('change', function() {
  var add = $(this).parent().find('.foo3').value();
  $('.foo2').html(add);
});
<select class="foo3">
  <?PHP while ($curRow=MysqLi_fetch_array($TableOutput)) {                                                      
    echo "<input class='foo' type='hidden' value='{$curRow['col3']}'><option value='{$curRow['col1']}'>{$curRow['col2']}</option>"; 
  } ?>
</select>
<div class="foo2"></div>

谢谢!

解决方法:

您可以使用data属性将自己的元数据存储在元素中.选择该选项后,您可以将其读出.尝试这个:

$('.foo3').change(function() {
  $('.foo2').text($(this).find('option:selected').data('location'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="foo3">
  <option>Please select...</option>
  <option value="1" data-location="Key St.">Joe</option>
  <option value="2" data-location="Link St.">Matt</option>
</select>
<div class="foo2"></div>

要创建该HTML输出,您的PHP将如下所示:

echo "<option value=\"{$curRow['col1']}\" data-location=\"{$curRow['col3']}\">{$curRow['col2']}</option>";

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐