Javascript 检查所选选项是否存在于动态创建的阵列中
我有一些代码看起来像这样。selectmember_id的值由PHP动态添加。我试图确定用户是否从列表中选择res或com选项,这将决定我是否在第二个下拉列表中动态添加。在代码保持不变的情况下,我总是收到脚本发出的-1警报。console.log调用打印出:[1,3][2]Javascript 检查所选选项是否存在于动态创建的阵列中,javascript,jquery,html,Javascript,Jquery,Html,我有一些代码看起来像这样。selectmember_id的值由PHP动态添加。我试图确定用户是否从列表中选择res或com选项,这将决定我是否在第二个下拉列表中动态添加。在代码保持不变的情况下,我总是收到脚本发出的-1警报。console.log调用打印出:[1,3][2] 你为什么不做一些更简单、更方便的事情呢 <p><select name="member_id" id="member_id"> <option value=""></opti
你为什么不做一些更简单、更方便的事情呢
<p><select name="member_id" id="member_id">
<option value=""></option>
<option class="res" value="1">Alice (res)</option>
<option class="com" value="2">Bob (com)</option>
<option class="res" value="3">Carl (res)</option>
</select></p>
<script>
$(function(){
$('#member_id').change(function(){
var isRes = $(this).find(':selected').hasClass('res');
alert(isRes ? "res" : "com");
});
});
</script>
另一个是寻找整数:
alert($.inArray(parseInt($(this).val()), res_members));
alert($.inArray(parseInt($(this).val()), com_members));
显然,$.inArray使用操作符==,将干草堆元素与针进行比较。显然,我需要更多的咖啡。
<option value="1">Alice (res)</option><script>res_members.push("1");</script>
<option value="2">Bob (com)</option><script>com_members.push("2");</script>
<option value="3">Carl (res)</option><script>res_members.push("3");</script>
alert($.inArray(parseInt($(this).val()), res_members));
alert($.inArray(parseInt($(this).val()), com_members));