在确认中单击“确定”不会提交页面

时间:2013-01-11 04:37:59

标签: jquery html

我的<body>部分代码中有一个简单的按钮:

<p><button id='submitstudents'>Submit Students</button></p>

我想要按钮做的是,如果点击它,它将通过editvalidation()功能查看是否有任何错误,如果没有错误,那么它会显示一个确认框,如果用户确认它应该执行ajax。

问题是,当我点击确认框中的OK按钮时,根本没有任何事情发生,页面甚至没有进行任何加载,我的问题是在点击后页面无法提交的原因确认中的OK按钮?

错误控制台中没有错误。

Jquery代码(按正确顺序显示):

验证:

function editvalidation()
{
    if ($("#sessionsDrop").val()==""){
        $("#studentAlert").html("Please Select an Assessment to edit from the Assessment Drop Down Menu");
    }
    if ($("#sessionsDrop").val()!="" && $("#studentadd").children().length==0){
        $("#studentAlert").html("You have not Selected any Students you wish to Add into Assessment");
    }
    if ($("#sessionsDrop").val()!="" && $("#studentadd").children().length!=0){
        return true;
    }
    return false;
}

提交表格:

     function submitform() {    

        $.ajax({
            type: "POST",
            url: "updatestudentsession.php",
    data: { 
        sessionid:  $('#currentid').val(),
        students:   $('#addtextarea').val()
    },
            dataType:'json',  //get response as json
            success: function(result){
                        if(result.errorflag){

           //do your stuff on getting error message
          var newHtml="<span style='color: red'>"+result.msg+"</span>"; 
          $("#targetdiv").html(newHtml);  //i am displaying the error msg here

        }else{
           //you got success message

           var newHtml="<span style='color: green'>"+result.msg+"</span>"; 
                $("#targetdiv").html(newHtml);


               //append students you want to add to assessment into student exist select box 
               var selectedStudents = jQuery("select#studentadd").find("option");
                selectedStudents.appendTo($("select#studentexist"));
                $('option.red', 'select#studentexist').remove(); 

                 //blank #studentadd select box
                 $('#studentadd').empty(); 

                    $('#targetdiv').show();
            }
        }
      }); 
}

确认:

         function showConfirm(){

          var examInput = document.getElementById('currentAssessment').value;

          if (editvalidation()) {

         var confirmMsg=confirm("Are you sure you want to add your selected Students to this Assessment:" + "\n" + "Exam: " + examInput);

         if (confirmMsg==true)
         {
         submitform();   
     }
  }
}

按钮点击:

$('body').on('click', '#submitstudents', showConfirm);  

1 个答案:

答案 0 :(得分:1)

尝试

$('#submitstudents').click(function(){
    showConfirm();
});

编辑:

你的脚本应该有效。将functions事件handlerclick放在$(document).ready(function(){ //Code goes here });内。

还要确保jquery库已链接。