Javascript 如何访问输入值或选择表单外标记

Javascript 如何访问输入值或选择表单外标记,javascript,forms,Javascript,Forms,我试图使用一个位于表单标记之外的select元素。HTML5允许 如果我在表单标记之间移动select,那么下面的所有示例都可以工作,但这会破坏'form='属性的用途 我也不想在select字段中使用id=,因为我将在同一页面上有多个表单 谢谢 $('#mybutton')。单击(函数(){ 警报(“1:”+$(“#myform select[name=“myselect”]”)val()); myform=$(“#myform”); 警报(“2:+myform.find('select[n

我试图使用一个位于表单标记之外的select元素。HTML5允许

如果我在表单标记之间移动select,那么下面的所有示例都可以工作,但这会破坏'form='属性的用途

我也不想在select字段中使用id=,因为我将在同一页面上有多个表单

谢谢

$('#mybutton')。单击(函数(){
警报(“1:”+$(“#myform select[name=“myselect”]”)val());
myform=$(“#myform”);
警报(“2:+myform.find('select[name=“myselect”]').val());
警报(“3:+$('#myform select').val());
myform=$(“#myform”);
警报(“4:+myform.find('select').val());
//工作
警报(“5:”+$('select[form=“myform”][name=“myselect”]').val());
});

一
二
三

您不能使用以下选项选择下拉列表:

$('#myform select[name="myselect"]').val();
因为在DOM中ID为
myform
的元素中没有名为
myselect
的子元素

你必须使用

$('select[name="myselect"]').val();

您可以使用

$('#mybutton')。单击(函数(){
$(“.sel”)。每个(函数(索引){
警报(索引+“选择框值的数目:”++$(this.val());
});
});

一
二
三

5号有效,那么你有什么问题?@alexP和TiiJ7-也许这就是所有必要的。我的目的是找到表单,然后找到属于此表单的select/input。情况是,如果我有50个表单(具有唯一ID),并且输入/选择是相同的,那么我可以传递表单对象并高效地搜索选择。如果我使用$('select[name=“myselect”]').val()),那么后端可能正在迭代该页面上的所有select元素。再考虑一下,如果我将javascript与jquery混合并匹配,这也会起作用:document.getElementById(“myform”).elements[“myselect”].value