javascript - 返回假;不工作

标签 javascript jquery ajax

我尝试过返回 false;我已经尝试过 event.preventdefault,但似乎都无法在 Firfox 中工作。它在 Chrome 中工作得很好,但在 IE 或 Firefox 中却不行?从当前页面获取信息,通过 ajax 将其发送到更新脚本,然后更新数据库。如果使用 Firefox,它会重新加载页面并且不进行任何更新。

这是按钮的代码:

  <div class="col-md-12 text-right">
<button class="btn btn-primary btn-sm" id="savebutton" onclick="editthisframily();"><span class="fa fa-lg fa-floppy-o"></span><span id="framilyeditbutton">  Update Framily </span></button>
<button class="btn btn-danger btn-sm" id="deletebutton"><span class="fa fa-lg fa-remove"></span><span id="framilydeletebutton">  Delete Framily</span></button>
</div>  



// update framily member
    // ========================

    function editthisframily() {

      return false;

        //event.preventDefault();

    var testdate = $('#ebirthday').val();

    if(testdate.length > 5 ) {

    if(moment(testdate, ["MM/DD/YYYY"]).isValid()) {
      //alert("good");
    }
    else {
      alert("date is bad");
      return;
    }}
          $('#framilyeditbutton').text(' Updating Framily. Please Wait ...');

               if($('#egender-f').is( ":checked" )) {

                  var gender = "f";
               }
               else {

                  var gender = "m";
               }

               if($('#remindertype_email').is( ":checked" )) {

                  var remindertype_email = "true";
               }
               else {

                  var remindertype_email = "false";
               }

               if($('#remindertype_sms').is( ":checked" )) {

                  var remindertype_sms = "true";
               }
               else {

                  var remindertype_sms = "false";
               }

                var myData = 'address1='+ $("#eaddress1").val()+'&address2='+$("#eaddress2").val()+'&city='+$("#ecity").val()+'&state='+$("#estate").val()+'&zipcode='+$("#ezipcode").val()+'&country='+$("#ecountry").val()+'&telephone='+$("#etelephone").val()+'&birthday='+$("#ebirthday").val()+'&gender='+gender+'&fullname='+$("#efullname").val()+'&email='+$("#eemail").val()+'&userid='+$("#userid").val()+'&relationship='+$("#erelationship").val(); //build a post data structure

               // console.log(myData);
                jQuery.ajax({
                type: "POST", // HTTP method POST or GET
                url: "includes/updateframily.php", //Where to make Ajax calls
                dataType:"text", // Data type, HTML, json etc.
                data:myData, //Form variables
                success:function(response){
                    $("#responds").append(response);

                    setTimeout(function() {

                    $('#framilyeditbutton').text(' Framily Member Updated ');
                    framilyView();
                    $('#framilyeditbutton').text(' Update Framily Member ');

                    }, 3000)

                },
                error:function (xhr, ajaxOptions, thrownError){
                   // $("#FormSubmit").show(); //show submit button
                   // $("#LoadingImage").hide(); //hide loading image
                    $('#buttontext').text(' something went wrong');
                    alert(thrownError);
                }
                });
        };

最佳答案

您需要在内联处理程序中返回函数的值:

onclick="return editthisframily()"

关于javascript - 返回假;不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26575226/

相关文章:

javascript - 如何根据特定标准在angularjs中使用正则表达式添加密码验证?

javascript - MVC 5 View调用JavaScript导致错误?

javascript - 从 SCEditor 获取值

jQuery:向表中添加行

jquery - Django Ajax/Jquery 在计时器上刷新 DIV 元素

php - 使用ajax向yii2中的表单添加更多字段

javascript - 使用iron-ajax (Google Polymer) 上传文件

javascript - HTML 表格在 TD 之间移动鼠标时触发 mouseOut

javascript - 我在 jquery ajax post 和 php 中遇到一些问题

javascript - 使用 jQuery 的 AJAX - 语法错误?