【问题标题】:Validate form data in jquery在 jquery 中验证表单数据
【发布时间】:2016-10-20 07:43:41
【问题描述】:

我想通过使用 jquery 来验证这一点。

当用户单击复选框和空文本框时,它会提醒我请填写 answer1,反之亦然以获取其他答案。另一个验证用户不能选择超过两个或三个复选框。 这是我的 HTML 代码:-

<div class="portlet-body form">
    <form id="add-question-form" class="form-horizontal" method="POST" action="{{ url('admin/add-question/'.$course_id) }}" enctype="multipart/form-data">
        <input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
        <div class="form-body">
            <div class="form-group">
                <label class="col-md-3 control-label">Question</label>
                <div class="col-md-4">
                    <textarea type="text" placeholder="Enter Question" class="form-control" name="title"></textarea>
                </div>
            </div> 
            @for($i=1; $i <=6; $i++)
            <div class="form-group">
                <label class="col-md-3 control-label">Option {{ $i }}:</label>
                <div class="col-md-4">
                    <input type="text" placeholder="Enter Option {{ $i }} " class="form-control" name="options[{{$i }}]">
                </div>
                <div class="col-md-1" style="float:left;  vertical-align: middle;">
                    <input type="checkbox" id="{{ $i }}" class="form-control" name="is_correct[{{ $i }}]" value = "1">
                </div>
            </div>
            @endfor  
        </div>
        <div class="form-actions fluid">
            <div class="row">
                <div class="col-md-offset-3 col-md-9">
                    <button class="btn green" type="submit">Submit</button>
                    <button onclick="window.location.href='/admin/test_questions/{{$course_id}}'" class="btn default" type="button">Cancel</button>
                </div>
            </div>
        </div>
    </form>
</div>

谁能给我jquery代码。提前致谢

【问题讨论】:

  • 您需要提供更多详细信息,例如您使用什么框架以及您尝试过什么,目前您似乎使用刀片引擎(laravel)。
  • 我使用的是 Larvel 框架 5.2

标签: javascript php jquery laravel-5 laravel-5.2


【解决方案1】:

你必须像这样在表单中添加一个 onsubmit 属性

<form onsubmit="return Validate()">

如果任何验证失败,Validate() 方法将返回 false 并阻止提交表单。现在要编写 Validate 方法,我建议您通过 JQuery 的基本语法,相信我做这些验证会很容易。

【讨论】:

  • 陷阱你能提供jquery代码进行验证吗?
  • @kunal 我不会。为什么?我没有足够的时间。至少现在不是。给他一条鱼,喂他一天。教他如何钓鱼和喂他一辈子。相信我,这将非常容易,如果您在编写时遇到问题,我会回复您所有的 cmets。但我希望你自己开始。
【解决方案2】:

将属性onchange="validateMyForm({{ $i }})" 添加到复选框(&lt;input type="checkbox" ... &gt;),然后将以下函数添加到脚本中。

function validateMyForm(j) {
     if ($("#options["+j+"]").val() == '') {
         alert('please fill out answer ' + j);
         $("#" + j).attr('checked', false); //clears checkbox
     }
 }

对于 jQuery v1.6+,您可以改用$("#"+j).prop('checked', true)

【讨论】:

  • 更新了代码。请说清楚防止多选复选框的条件是什么。
猜你喜欢
  • 2021-05-09
  • 1970-01-01
  • 2011-07-12
  • 2013-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多