形式上的条件输入字段

时间:2018-01-15 08:53:09

标签: javascript jquery html html5

我想开发一个具有三个输入字段的表单,其中名称为schoolname的第三个输入只有在年龄低于15时才可见,否则应该隐藏。当用户输入年龄低于15岁时,应该弹出第三个字段并且应该是必填字段。我开发了表格,但是当我进入15岁以上时,表格没有提交,因为我将学校字段设置为隐藏。如果年龄超过15岁,我应该怎样做才能提交表格?如果年龄低于15,我应该怎么做才能提交表格

$("#submit").click(function() {
  var age = $("#submit").val();
  if (age < 15) {
    $("#schoolname").show();
  }
});
<form>
  <input id="name" type="text" name="name" placeholder="Enter your name" required />
  <input id="age" type="number" name="age" placeholder="age" required />
  <input id="schoolname" type="text" name="schoolname" placeholder="Enter your school name" style="display:none" required />
  <input id="submit" type="submit" name="submit" value="submit">
</form>

4 个答案:

答案 0 :(得分:0)

您可以使用keyup活动

$("#age").keyup(function() {
  var age = $("#age").val();
  if (age < 15 && age > 0) {
    $("#schoolname").show();
  } else {
    $("#schoolname").hide();
  }
});

答案 1 :(得分:0)

var age = $("#submit").val();

更改为

var age = $("#age").val();

#age表示您按id获取元素,id表示您需要的年龄

答案 2 :(得分:0)

您的mysql_query输入值错误,该字符串是失败的原因。你需要改变

age

var age = $("#submit").val();

var age = parseInt($("#age").val());会将字符串转换为整数,这对于parseInt()语句来说更快更好。

答案 3 :(得分:0)

&#13;
&#13;
$("#age").on("change",function() {
  var age = $("#age").val();
  if (age < 15) {
 $('<input id="schoolname" type="text" name="schoolname" placeholder="Enter your school name" required />').insertBefore("#submit");
  }else{
  $("#schoolname").remove();
  }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input id="name" type="text" name="name" placeholder="Enter your name" required />
  <input id="age" type="number" name="age" placeholder="age" required />

  <input id="submit" type="submit" name="submit" value="submit">
</form>
&#13;
&#13;
&#13;