#javascript #php #jquery #laravel-5 #laravel-5.2
#javascript #php #jquery — запрос #laravel-5
Вопрос:
я хочу проверить это с помощью пользовательского 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. Заранее спасибо
Комментарии:
1. Вам нужно предоставить более подробную информацию, например, какой фреймворк вы используете и что вы пробовали, в настоящее время кажется, что вы используете blade engine (laravel).
2. Я использую Larvel framework 5.2
Ответ №1:
Вам нужно будет добавить атрибут onsubmit в форму следующим образом
<form onsubmit="return Validate()">
Затем метод Validate() вернет значение false, если какая-либо проверка завершится неудачей, и предотвратит отправку формы. Теперь, чтобы написать метод Validate, я предлагаю вам ознакомиться с базовым синтаксисом jQuery и, поверьте мне, было бы очень легко выполнить эти проверки.
Комментарии:
1. Ловушка не могли бы вы предоставить код jquery для проверки?
2. @kunal я не буду. Почему? У меня недостаточно времени для этого. Нет, по крайней мере, сейчас. Дайте человеку рыбу и кормите его в течение дня. Научите его ловить рыбу и кормить его всю жизнь. Поверьте мне, это будет очень просто, и я отвечу на все ваши комментарии, если у вас возникнут проблемы при написании этого. Но я хочу, чтобы вы начали сами.
Ответ №2:
Добавьте атрибут onchange="validateMyForm({{ $i }})"
в флажок ( <input type="checkbox" ... >
), затем добавьте следующую функцию в скрипт.
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)
.
Комментарии:
1. Обновлен код. Пожалуйста, разъясните, какое условие для предотвращения множественного выбора флажка.