【问题标题】:Check Hidden Form Input has Value on Form Submit检查隐藏表单输入在表单提交时是否具有值
【发布时间】:2016-11-10 02:27:45
【问题描述】:

我有一个带有隐藏输入的表单:

<input type="hidden" name="productID" id="productID" value="">

我有一个隐藏的警报(为此使用 Bootstrap):

<div id="alert_ajax_error" class="alert alert-danger text-center" role="alert" style="display:none">
  You have not made a selection. Please select an Item and try again
</div>

<div class="text-center">
  <button type="submit" name="buttonType" value="saveSelected" class="btn btn-success">Submit</button>
</div>

当用户从表中选择时,隐藏的表单输入通过另一个脚本填充 - 它添加 productID 作为输入的值。

我现在想添加一些客户端验证(在适当的位置进行服务器端验证),以便如果用户单击提交,它会通过检查隐藏输入的存在来检查他们是否做出了选择,以查看是否它有一个值 - 如果它是空的,它将显示隐藏的警报:

$("#alert_ajax_error").show();

我不确定是否可以使用 Javascript/JQuery 检查隐藏的输入,以及如果可能的话如何处理。

【问题讨论】:

  • 您的表单目前在提交或输入时是否有任何前端错误处理?

标签: javascript jquery html forms twitter-bootstrap


【解决方案1】:

基本上你会想要使用 if 语句检查提交时的值

$("form").submit(function(event) {

     event.preventDefault();

     if($('#productID').val() == '') {

          $("#alert_ajax_error").show();

          return false;

     }

     //.... more form actions if good ....

});

【讨论】:

  • 刚刚注意到如果表单通过了测试,它就不会提交。如果没有隐藏的输入值,它会显示警报,但如果没有提交表单 - 知道这里缺少什么吗?
  • event.preventDefault() 正在停止默认操作
  • 您的表单处理程序是什么样的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-03
  • 1970-01-01
  • 1970-01-01
  • 2016-12-08
  • 1970-01-01
相关资源
最近更新 更多