Не получается сделать условие
Скажите как сделать так что бы при условии например return false; событие $("#submit").click(function() {} неактивировалось а есть возвращает true тогда всё ишло бы нормально
|
Непонятно. Вы же сами дали ответ на свой вопрос. Если return true, то действие пойдет дальше, а если вернуть false, то обработка прекратится. Например, если в обработчике onsubmit вернуть false, то сабмита формы не будет и т.д.
|
Вот смотрите у меня есть два кода(даю урывки)
Вот первый код
function validate(form_name)
{
\\Тут кож проверки валидности
if (!reg.test(email.value)) {
email.style.backgroundColor="red";
text.innerText=str;
email.focus();
return false;
}
else {document.forms(form_name).submit();}
}
И вот второй
$(function() {
refresh_shoutbox();
setInterval("refresh_shoutbox()", 15000);
$("#submit").click(function() {
var name = $("#name").val();
var email = $("#email").val();
var message = $("#message").val();
var ip = $("#ip").val();
var data = 'name='+ name +'&message='+ message + '&email='+ email+ '&ip='+ ip;
$.ajax({
type: "POST",
url: "shoutbox/shout.php",
data: data,
success: function(html){
$("#shout").slideToggle(500, function(){
$(this).html(html).slideToggle(500);
$("#message").val("");
});
}
});
return false;
});
});
Как сделать так что бы второй код выполнялся только тогда когда в первом нету return false; |
Если я правильно понял, то в первом куске идет валидация формы, а во втором - ее сабмит по кнопке. Только вот непонятно, в каком месте у вас происходит эта самая валидация? В коде я этого не увидел.
|
мб так
if (validate('my_form'))
// Bla bla bla
|
Короче вот весь код
function validate(form_name)
{
var form_=document.getElementById(form_name);
var str='Неправильный адрес!!!';
var text=document.getElementById("incorrect_mail");
var email=document.forms[form_name].email;
var reg= new RegExp("[0-9a-z_]+@[0-9a-z_^.]+\\.[a-z]{2,3}", 'i')
if (!reg.test(email.value)) {
email.style.backgroundColor="red";
text.innerText=str;
email.focus();
return false;
}
else {return true;}
}
$(function() {
refresh_shoutbox();
setInterval("refresh_shoutbox()", 15000);
$("#submit").click(function() {
var name = $("#name").val();
var email = $("#email").val();
var message = $("#message").val();
var ip = $("#ip").val();
var data = 'name='+ name +'&message='+ message + '&email='+ email+ '&ip='+ ip;
$.ajax({
type: "POST",
url: "shoutbox/shout.php",
data: data,
success: function(html){
$("#shout").slideToggle(500, function(){
$(this).html(html).slideToggle(500);
$("#message").val("");
});
}
});
return false;
});
});
|
$("#submit").click(function() {
if (!validate('my_form'))
return;
|
| Часовой пояс GMT +3, время: 16:46. |