调试,Jquery函数不起作用

调试,Jquery函数不起作用,jquery,debugging,jquery-selectors,Jquery,Debugging,Jquery Selectors,HTML代码:动态创建HTML代码 <li> <div class="above">What do I like best?</div> <div class="below"> <label>Answer:(1 words)</label> <input id="question6" type="text" size="5"/> <label id="sign6"/&

HTML代码:动态创建HTML代码

<li>
    <div class="above">What do I like best?</div>
    <div class="below">
    <label>Answer:(1 words)</label>
    <input id="question6" type="text" size="5"/>
    <label id="sign6"/>
    </div>
    </li>
    <li>
    <div class="above">What city do I like?</div>
    <div class="below">
    <label>Answer:(1 words)</label>
    <input id="question7" type="text" size="5"/>
    <label id="sign7"/>
    </div>
  • 我最喜欢什么? 答复:(1字)
  • 我喜欢哪个城市? 答复:(1字)
  • Jquery代码:

    function subjectivecheck(id){
            alert(id);
            var cost=(new Date().getTime() - start.getTime())/1000;
            var value=$('#question'+id).val();
            $.post("subjectivecheck.php?",{val:value, qid:id,time:cost, a_id:"<?php echo $announcementid; ?>"},function(xm){
    
                switch(parseInt(xm)){
                    case 4:
                    { $htm='Congrats,you have passed the test.';
                        $('#success').css({"color":"green"});
                        $('#success').text($htm);
                    return; 
                    }
                    case 1:
                    {
                    $htm='V';
                $('#sign'+id).css({"color":"green"});
                $('#sign'+id).text($htm);
                break;  
                    }
                    case 0:{
    
                         $htm='X';
                $('#sign'+id).css({"color":"red"});
                $('#sign'+id).text($htm);
                break;
                    }
                    case 3:{
                        $('#subjectivequestion').text('You have failed at this announcement.');
    
                        $('#choicequestions').text(" ");
                    }
                }
    
            });
    
        }
        var ajaxCallTimeoutID = null;
        $('input[id^=question]').keyup(function(ev){
            alert(this.id.substr(8));
        if (ajaxCallTimeoutID != null)
            clearTimeout(ajaxCallTimeoutID);
    
          ajaxCallTimeoutID = setTimeout(subjectivecheck(id), 1000);
    
        });
    
    函数主观性检查(id){
    警报(id);
    var cost=(new Date().getTime()-start.getTime())/1000;
    var值=$('#问题'+id).val();
    $.post(“subjectivecheck.php?”,{val:value,qid:id,time:cost,a_id:”“},函数(xm){
    开关(parseInt(xm)){
    案例4:
    {$htm='恭喜你,你通过了考试。';
    $('#success').css({“color”:“green”});
    $('success').text($htm);
    返回;
    }
    案例1:
    {
    $htm='V';
    $('#sign'+id).css({“color”:“green”});
    $('#符号'+id).text($htm);
    打破
    }
    案例0:{
    $htm='X';
    $('#sign'+id).css({“color”:“red”});
    $('#符号'+id).text($htm);
    打破
    }
    案例3:{
    $(“#主观性问题”).text('您在此次公告中失败');
    $(“#选择问题”)。文本(“”);
    }
    }
    });
    }
    var ajaxCallTimeoutID=null;
    $('input[id^=question]')。键控(函数(ev){
    警报(this.id.substr(8));
    如果(ajaxCallTimeoutID!=null)
    clearTimeout(ajaxCallTimeoutID);
    ajaxCallTimeoutID=setTimeout(主观性检查(id),1000);
    });
    
    当我在问题6中输入内容时

    问题7

    ,, 函数$('input[id^=question]').keyup(函数(ev)}不工作,没有
    alert()
    。此HTML文件的其他jquery函数工作正常。
    有什么想法吗?

    请确保将jQuery脚本包装在
    $(document.ready()


    请确保当您将元素“question7”或“question6”绑定到keyup事件时,它在动态生成时存在于页面/DOM中。您可以在firebug

    Try
    $(“input[id^='question']”)中检查它。
    即使我将Jquery脚本包装在$(document).ready()中,它也不起作用。是的,它存在于页面/DOM中。
    $(document).ready(function() {
      // your jQuery script here.
    });
    
    $(function(){
      // your jQuery script here.
    });