在复选框上,单击将选择框更改为具有相同ID的文本框

时间:2017-12-30 13:18:22

标签: javascript jquery html

想知道单击一个复选框时是否可能将选择框更改为具有相同ID的文本框" Wine_name"

当涉及到javascript时,并没有真正解决,所以任何帮助将不胜感激。

我需要这个的原因,当用户填写表单时,如果选择框没有他们想要选择的选项,他们可以单击复选框,然后允许他们手动输入他们想要的文本

1 个答案:

答案 0 :(得分:1)

嗯..你可以做到这一点..只需保持min,你必须禁用隐藏的输入,这样当表单被提交时它就不会被处理。

看看我已经做过的代码。

我不确定你真的需要同样的' id'如果您只是发送表单并在服务器端处理结果,则可以命名'使用'名称'提交的参数属性。这样您就可以在视图侧自由使用不同的ID,而无需更改后端以有条件地验证它。



var checkbox = document.querySelector("#custom_value");
var select = document.querySelector("#selection");
var altSelect = document.querySelector("#selection_alt");

checkbox.addEventListener('change', function(event) {
  select.classList.toggle('hidden');
  select.disabled = !select.disabled;
  
  altSelect.classList.toggle('hidden');
  altSelect.disabled = !altSelect.disabled;
});

.hidden {
  display: none;
}

<input type="checkbox" id="custom_value"> Alternative

<br>
<select id="selection" name="selection">
  <option value="1">1</option>
  <option value="1">2</option>
  <option value="1">3</option>
  <option value="1">4</option>
  <option value="1">5</option>
</select>

<input type="text" disabled class="hidden" name="selection" id="selection_alt" placeholder="Custom value..">
&#13;
&#13;
&#13;