#javascript #php
#javascript #php
Вопрос:
Я использую следующий код в форме с капчей. Если captcha верна, то $success = 1
, else $success=2
. Если captcha не заполнена, то $success=1
.
id=validation
упоминается с помощью captcha, которая находится в самом низу страницы, и id=success
упоминается с помощью элемента div, который находится в самом верху страницы.
Проблема :
Первый тест :
1) captcha верен -> нажмите отправить -> страница переходит в начало
Второй тест :
1) капча неверна или не заполнена -> нажмите отправить -> страница переходит в низ
2) капча верна -> нажмите ввести -> страница остается внизу (тогда как она должна идти наверх)
Java Script :
var myVariable = <?php echo(json_encode($success)); ?>;
if (myVariable == 2) {
window.location = ("" window.location).replace(/#[A-Za-z0-9_]*$/,'') "#validation"
};
if (myVariable == 3) {
window.location = ("" window.location).replace(/#[A-Za-z0-9_]*$/,'') "#validation"
};
if (myVariable == 1) {
window.location = ("" window.location).replace(/#[A-Za-z0-9_]*$/,'') "#success"
};
Комментарии:
1. попробуйте
window.location.href
.2. вы зафиксировали событие кнопки ввода? получаете ли вы запрос при нажатии кнопки ввода
Ответ №1:
Попробуйте это:
<script type='text/javascript'>
var myVariable = <?php echo(json_encode($success)); ?>;
if (myVariable == 2 || myVariable == 3) {
window.location.href = ("" window.location.href).replace(/#[A-Za-z0-9_]*$/,'') "#validation"
};
if (myVariable == 1) {
window.location.href = ("" window.location.href).replace(/#[A-Za-z0-9_]*$/,'') "#success"
};
</script>
Я изменил окно.расположение в окне.Расположение.href и получил тот же результат в одном операторе if.