Доброго времени суток! Сбился с ног ища ответ,но никто так и не смог помочь! Подскажите, почему при таких условиях: Код (Text): <form id="formcoock" action="inp_coock.php" method="post" enctype="multipart/form-data"> <label for="cod">КОД С КАРТИНКИ:</label><br> <label for="cod"><img src="code/my_codegen.php"></label> <input name="code" class="text" type="text"/><br> <input id="btn_sendCoock" type="submit" value="ОТПРАВИТЬ" class=""/> </form> Тут не пугайтесь, это просто обработчик кода!Всё тут работает-точно проверено,но на всякий случай расположил: Код (Text): <?php $code = trim(addslashes(htmlspecialchars(strip_tags($_POST['code'])))); if(get_magic_quotes_gpc()) { $code = stripslashes($code); } function generate_code() { $hours = date("H"); $minuts = substr(date("H"), 0 , 1); $mouns = date("m"); $year_day = date("z"); $str = $hours . $minuts . $mouns . $year_day; $str = md5(md5($str)); $str = strrev($str); $str = substr($str, 3, 6); $array_mix = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY); srand ((float) microtime()*1000000); shuffle ($array_mix); return implode("", $array_mix); } function chec_code($code) { $code = trim($code); $array_mix = preg_split ('//', generate_code(), -1, PREG_SPLIT_NO_EMPTY); $m_code = preg_split ('//', $code, -1, PREG_SPLIT_NO_EMPTY); $result = array_intersect ($array_mix, $m_code); if (strlen(generate_code())!= strlen($code)) { return FALSE; } if (sizeof($result) == sizeof($array_mix)) { return TRUE; } else { return FALSE; } } if (!chec_code($_POST['code'])) { $html = 'Вы неверно ввели код с картинки!'; } echo $html; ?> Вот этот код вообще ничего не выдаёт: Код (Text): $('#formcoock').submit(function(e){ var codeVal = $('#formcoock input[name=code]').val(); $.ajax({ type: 'POST', url: 'testJSCode.php', data: {'code':codeVal}, success: function(html){ if (html !== '') { $("<div id='indicator'></div>").insertAfter('#btn_sendCoock').html(html); document.getElementById('btn_sendCoock').disabled = false; } else { $('#indicator').fadeOut(1000); document.getElementById('btn_sendCoock').disabled = false; } } }); А вот этот: Код (Text): $('#formcoock').submit(function(e){ var codeVal = $('#formcoock input[name=code]').val(); $.ajax({ type: 'POST', url: 'testJSCode.php', data: {'code':codeVal}, success: function(html){ if (html !== '') { $("<div id='indicator'></div>").insertAfter('#btn_sendCoock').html(html); document.getElementById('btn_sendCoock').disabled = false; } else { $('#indicator').fadeOut(1000); document.getElementById('btn_sendCoock').disabled = false; } } }); return false; выдаёт сообщение сообщение об ошибке как положено, но, соответственно, заблокирована кнопка. Как быть?Почему в первом случае не могу добиться желаемого результата?
Да куда уж меньше... Короче,я взял всю страницу,оставил подключаемыми только js и css, и только форму-короче ajax опять не работает - то ли лыжи не едут!
последние два кода отличаются только последней строкой? return false; как я понял. и какое сообщение то выдает, как положено? зачем везде document.getElementById('btn_sendCoock').disabled = false;? 1.уберите это и посмотрите что будет 2.раз пользуетесь jquery то через него и обращайтесь к кнопке. зачем напрямую то через js ? есть же .attr()
именно! последнее,где присутствует return false; убрать эти строчки совсем или заменить обращение на attr()? Вообще я уже использовал данный код в другом проекте и всё замечательно работало,а тут конфликт ajax словно!Прогуглил и ничего кроме no.Conflict(); не нашёл - это не помогло! П.С.Предложенные Вами варианты не исправили ситуации!