我有一个带有多个选择选项的select
框。我想通过AJAX请求在数组中发送选定的值。如何在select
标签中选择多个值,并在单击时将所有值发送到数组中?
<script type="text/javascript">
</script>
<select name="name[]" id="name[]">
<option>--Select--</option>
<?php $sql = mysql_query("select * from med_list order by medicine asc");
while($sha=mysql_fetch_array($sql)) { ?>
<option style="color:#007F55" value="<?php echo $sha['id']; ?>">
<?php echo mysql_real_escape_string($sha['medicine']); ?>
</option>
<?php } ?>
</select>
$("#submit").click(function() {
var bac = $("#bacteria").val();
alert(bac);
});
答案 0 :(得分:1)
检查此代码
<select id="data" name="data" class="data" multiple="multiple">
<option value="100">foo</option>
<option value="101">bar</option>
<option value="102">bat</option>
<option value="103">baz</option>
</select>
jQuery:
$(".data").val(["100", "101"]);
答案 1 :(得分:1)
首先,在select标签中添加多个属性,并在id属性中删除数组括号。 第二件事,在“提交”按钮上,您得到错误的选择框ID的值。
将 var bac = $(“#bacteria”)。val(); 替换为 var bac = $(“#name”)。val(); < / p>
<select name="name[]" id="name" multiple="multiple">
<option value="">Select Any Value</option>
<option value="name1">Name 1</option>
<option value="name2">Name 2</option>
<option value="name3">Name 3</option>
<option value="name4">Name 4</option>
<option value="name5">Name 5</option>
</select>
<button id="submit">Submit</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
$("#submit").click(function() {
var bac = $("#name").val();
alert(bac);
});
</script>
答案 2 :(得分:1)
使用 id="name"
而不是 id="name[]"
<select name="name[]" id="name">
答案 3 :(得分:0)
首先是要知道您将发送数据数组, 如果您使用“ var bac = $(”#bacteria“)。val();”它只会拿第一个项目,并且会通过它。 要通过ajax发送相同选择框的多个值,请先创建一个数组,然后将其传递 这就是我做到的方法,而且有效
fetch('service-worker.js')
根据您的php文件,您可以忽略if语句