Почему мой обратный вызов jQuery .click () не обрабатывает ввод правильно? - PullRequest
1 голос
/ 30 сентября 2011

Я создаю эту классную игру HTML Jeopardy, и мне нужна небольшая помощь в кодировании.Прямо сейчас я работаю только над первым вопросом.Который появляется в FancyBox.

Я использую if, чтобы определить правильный ответ, но он не работает.

У меня есть код:

$(document).ready(function() {
    var tag_100_input = $('#tag_100_ans').val();
    $('#tag_100_button').click(function() {
        if (tag_100_input == 'strong' || tag_100_input == 'b' || tag_100_input == '<strong>' || tag_100_input == '<b>') {
            $('.tag_100_correct').fadeIn(500);
            setTimeout("$.fancybox.close()", 3000);
            score += 100;
            $('#tag_100_not').css('display', 'none');
            $('#tag_100').css('display', 'none');
        }
        else {
            $('.tag_100_wrong').fadeIn(500);
            setTimeout("$.fancybox.close()", 3500);
            $('#tag_100_not').css('display', 'none');
            $('#tag_100').css('display', 'none');
        }
        $('.score').html(score);
    });
});

Вопрос об опасности: какой тег может сделать текст жирным?

Даже когда я вхожу в один из оповещателей: b, strong, <b> или <strong> Он показывает, что неправильно <span> вместо правильного.Почему это?

1 Ответ

3 голосов
/ 30 сентября 2011
$(document).ready(function() {
    var tag_100_input = $('#tag_100_ans').val();
    $('#tag_100_button').click(function() {

Вы получаете ввод с помощью .val(), как только документ загружается. Позже вы больше не смотрите на ввод, поэтому ваш код будет действовать только на значения ввода по умолчанию, а не на то, что вы на самом деле ввели.

Вам просто нужно вместо этого получить входное значение внутри вашего .click() обратного вызова, поменяв местами вторую и третью строки:

$(document).ready(function() {
    $('#tag_100_button').click(function() {
        var tag_100_input = $('#tag_100_ans').val();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...