如何在下拉菜单中获取除“隐藏”和“提交”按钮以外的所有表单字段

时间:2018-12-18 09:11:20

标签: javascript jquery forms select field

<form class="myform" id="myform">
  First name:<br>
  <input type="text" id="input_1" name="firstname" value="Mickey">
  <br>
  Last name:<br>
  <input type="text" id="input_2 "name="lastname" value="Mouse">
  <br><br>
  Agree:<br>
  <input type="radio" id="input_3 "name="agree" value="Mouse">
  <br><br>
  <input type="submit" value="Submit">
</form> 

如何在选择/下拉列表中按名称获取所有表单字段,并在选择时返回ID?

2 个答案:

答案 0 :(得分:0)

使用以下命令-

用于获取表单的特定输入字段-

var p = $('input[type=text]')

然后在ID为'#select'的下拉元素上使用-

$('#select').append($('<option></option>').val(p).html(p));

其中“ p”不过是您从上面的jquery选择器中获得的所有元素。

尽管我在这里无法真正为您提供更多帮助。请发布代码并重新整理您的问题。

答案 1 :(得分:0)

您可以在表单上使用querySelectorAll,然后仅生成选择器所需的字典:

let selector_vals = {};
let input_select = $("#input_select");
$("#myform input:not([type=submit])").each(function(idx, elem) {
    selector_vals[elem.name] = "#" + elem.id;
    input_select.append(new Option(elem.name,"#" + elem.id));
});

console.log(selector_vals);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Form Items<br/>
<select id="input_select"></select>

<form class="myform" id="myform">
  First name:<br>
  <input type="text" id="input_1" name="firstname" value="Mickey">
  <br>
  Last name:<br>
  <input type="text" id="input_2 "name="lastname" value="Mouse">
  <br><br>
  Agree:<br>
  <input type="radio" id="input_3 "name="agree" value="Mouse">
  <br><br>
  <input type="submit" value="Submit">
</form>