У меня есть форма, которая делает проверку на стороне клиента jquery, я хочу сравнить значение сеанса для captcha со значением input.but, я не знаю
как получить значение сеанса captcha и
как сравнить значение сеанса и вход?
это то, как я сравниваю сеанс, но он не делает различий, как для неправильного, так и для правильного значения, он говорит о своем неправильном. Получите значение сеанса через этот код:
$('#captchaimg').val()
но, конечно, это неправильно!
if(!($('#6_letters_code').val() == $('#captchaimg').val())){
alert('error');
$('#6_letters_code').parent().parent().find('.form-error').html(" error");
err++;
}
и это мой код captcha:
<img src="captcha_code_file.php?rand=<?php echo rand(); ?>" id="captchaimg" />
и поле ввода:
<input id="6_letters_code" name="6_letters_code" type="text" class="form-input"/>
Теги img не имеют значений. Вот почему ваш код не работает. Вероятно, вам нужно отправить изображение "значение" в jquery из вашего php-скрипта.
Если php перескакивает изображение "значение" в img url (как ваш пример), есть возможность получить это значение.
Редактировать:
if(!(sessionData == $('#captchaimg').val())){
alert('error');
$('#6_letters_code').parent().parent().find('.form-error').html(" error");
err++;
}
Получите свое значение сеанса в Viewbag like-
@ViewBag.captchaimg = Session["captchaimg"];
поместите это в нижней части своего вида
<script>
var CAPTCHAIMG_URL = "@ViewBag.captchaimg";
</script>
Теперь вы можете присвоить это значение в файле сценария
2 В файле сценария
var myval= $("input[id=test]").val();
if (myval == CAPTCHAIMG_URL )
alert("match");
здесь test - это идентификатор вашего ввода. Если это поможет отметить других: