Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 表单输入上的Jquery单击事件未运行_Javascript_Jquery_Html_Forms_Events - Fatal编程技术网

Javascript 表单输入上的Jquery单击事件未运行

Javascript 表单输入上的Jquery单击事件未运行,javascript,jquery,html,forms,events,Javascript,Jquery,Html,Forms,Events,我正在创建一个数学问题网站,在一个页面中,我有一个用户点击提交的部分,它将检查答案是否正确 以下是我的代码中遇到问题的主要部分: var newProblem = function(){ var textHide = true; var submitTimes = 0 $("#content").append("<h2 class='middle_text'>Notice, this page is in BETA stage, imp

我正在创建一个数学问题网站,在一个页面中,我有一个用户点击提交的部分,它将检查答案是否正确

以下是我的代码中遇到问题的主要部分:

var newProblem = function(){
        var textHide = true;
        var submitTimes = 0
        $("#content").append("<h2 class='middle_text'>Notice, this page is in BETA stage, improvement is still needed.</h2>")
        $(".middle_text").fadeTo(1000,.8)
        setTimeout(function(){$(".middle_text").fadeTo(500,0,function(){$(".middle_text").hide()})},4000);
        setTimeout(function(){
            var denominator = getNumbersEquivFrac.den()
            var numerator = getNumbersEquivFrac.num(denominator);
            var equivalent = getNumbersEquivFrac.equiv()
            var problem = new equivalFrac(numerator,denominator,equivalent);
            $("#content").append("<div class ='problem-choice' id='solve'>SOLVE THIS!</div>")
            $("#content").append("<div class='problem-choice' id='answer'>SKIP AND GET ANSWER</div>")
            $("#content").append("<div style='margin:auto; width:450px; text-align:center'><p id='question'>" + problem.printQuestion() + "</p>")
            $("#content").append("<div id='instructions'></div>")
            $("#question").fadeTo(750,1);
            $(".problem-choice").fadeTo(750,1);
            $("#solve").click(function(){
                if(textHide === true){
                $("#content").append("<form name='answer'><input class='problem-text' type='text' name='answer-input'><input type='button' class='problem-submit' value ='SUBMIT ANSWER'></form>");
                $(".problem-text").fadeTo(300,.8)
                $(".problem-submit").fadeTo(300,.8)
                textHide = false
                }
            })
        },4500)
        }
        newProblem();
        $(".problem-submit").click(function(){
                    var checkAnswer = function(){
                    var answer = document.forms["answer"]["answer-input"].value;

                    if(answer === null || answer === ""){
                        alert("You must type in an answer.")
                    }
                    else{
                    submitTimes = submitTimes + 1;
                    if(answer !== problem.answer()){
                        if(submitTimes < 2){
                        $("#content").append("<div class='result' id='wrong'><div id='problem-des'><p>The correct answer was " + problem.answer() + "." + "</p></div><button id='next'>NEXT</button></div>");
                        $(".result").fadeTo(500,1)
                        }
                    }
                    else if(answer===problem.answer()){
                        if(submitTimes < 2){
                        alert("Correct!")
                        }
                    }
                    }
                    }
                    checkAnswer()

        });
var newProblem=function(){
var texthhide=true;
var submitTimes=0
$(“#内容”).append(“注意,此页面处于测试阶段,仍需改进。”)
$(“.middle_text”).fadeTo(1000,.8)
setTimeout(function(){$(“.middle_text”).fadeTo(500,0,function(){$(“.middle_text”).hide()},4000);
setTimeout(函数(){
变量分母=getNumbersEquivFrac.den()
var分子=getNumbersEquivFrac.num(分母);
var当量=getNumbersEquivFrac.equiv()
var问题=新的等价物(分子、分母、等价物);
$(“#内容”).append(“解决此问题!”)
$(“#内容”).append(“跳过并获取答案”)
$(“#content”).append(“

”+problem.printQuestion()+”

”) $(“#内容”)。追加(“”) $(“#问题”)。法德托(750,1); $(“.problem choice”)。法德托(750,1); $(“#求解”)。单击(函数(){ 如果(textHide==真){ $(“#内容”)。追加(“”); $(“.problem text”).fadeTo(300.8) $(“.problem submit”).fadeTo(300.8) textHide=false } }) },4500) } 新问题(); $(“.problem submit”)。单击(函数(){ var checkAnswer=函数(){ var answer=document.forms[“answer”][“answer input”].value; 如果(答案===null | |答案===“”){ 提醒(“您必须键入答案。”) } 否则{ submitTimes=submitTimes+1; if(答案!==problem.answer()){ 如果(提交时间<2){ $(“#content”).append(正确答案是“+problem.answer()+”+“+”

NEXT”); $(“.result”).fadeTo(500,1) } } else if(答案===problem.answer()){ 如果(提交时间<2){ 警告(“正确!”) } } } } 核对答案() });
这是表单提交按钮的事件所在位置

$(".problem-submit").click(function(){
                    var checkAnswer = function(){
                    var answer = document.forms["answer"]["answer-input"].value;

                    if(answer === null || answer === ""){
                        alert("You must type in an answer.")
                    }
                    else{
                    submitTimes = submitTimes + 1;
                    if(answer !== problem.answer()){
                        if(submitTimes < 2){
                        $("#content").append("<div class='result' id='wrong'><div id='problem-des'><p>The correct answer was " + problem.answer() + "." + "</p></div><button id='next'>NEXT</button></div>");
                        $(".result").fadeTo(500,1)
                        }
                    }
                    else if(answer===problem.answer()){
                        if(submitTimes < 2){
                        alert("Correct!")
                        }
                    }
                    }
                    }
                    checkAnswer()

        });
$(“.problem submit”)。单击(函数(){
var checkAnswer=函数(){
var answer=document.forms[“answer”][“answer input”].value;
如果(答案===null | |答案===“”){
提醒(“您必须键入答案。”)
}
否则{
submitTimes=submitTimes+1;
if(答案!==problem.answer()){
如果(提交时间<2){
$(“#content”).append(正确答案是“+problem.answer()+”+“+”

NEXT”); $(“.result”).fadeTo(500,1) } } else if(答案===problem.answer()){ 如果(提交时间<2){ 警告(“正确!”) } } } } 核对答案() });
我不知道事件是否是在通过代码附加的选择器上调用的,而不是最初在html文档中调用的

我试着在页面的某些部分调用该事件,结果成功了


但是它不适用于这些,如果您知道原因,请说出来。

您可以在表单上添加一个ID,在提交功能中使用:

$(document).on('submit','id_form',function(e) {
e.preventDefault();

}

您是否尝试过使用jquery的.on()函数,该函数实质上是将click事件处理程序附加到DOM最初完成后创建的任何元素

更多信息请点击此处:


-1、孤立问题
$(".problem-submit").on('click',function(){ 
    //function here 
});