我通过PHP在SQL中创建了一个包含3列的表。我试图以这种方式将值放在SELECT下拉列表中:
例如,如果表格为:
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>
谢谢!
答案 0 :(得分:3)
您可以使用data
属性将自己的元数据存储在元素中。然后,您可以在选择option
时将其读回。试试这个:
$('.foo3').change(function() {
$('.foo2').text($(this).find('option:selected').data('location'));
});
&#13;
<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>
&#13;
要创建该HTML输出,您的PHP将如下所示:
echo "<option value=\"{$curRow['col1']}\" data-location=\"{$curRow['col3']}\">{$curRow['col2']}</option>";