每个函数后jQuery preventDefault()都不起作用

时间:2017-09-12 05:24:40

标签: jquery

我正在尝试使用每个函数从表单中获取所有输入。但是Preventdefault在每个功能之后都没有工作。

$("#my-form").on('submit', function(e){
    var masterArray = array();
    var stringify = '';
    $(".input-class").each(function(){
        $id = $(this).attr('id');
        $data = $(this).val();
        $myArray = array();
        
        if ($eamount == 0) {
   			myArray = {
                scheme_code:$id,
                amount:0
            };
        }else{
    		myArray = {
                scheme_code:$id,
                amount:$data
            };
        }
    	masterArray.push(myArray);
    });
    stringify = JSON.stringify(investmentArray);
    e.preventDefault();
)};

3 个答案:

答案 0 :(得分:0)

使用return false。

$("#my-form").on('submit', function(e){
 var masterArray = array();
 var stringify = '';
 $(".investment-amount").each(function(e){
          $id = $(this).attr('id');
          $data = $(this).val();
          $myArray = array();

          if ($eamount == 0) {
            myArray = {
              scheme_code:$id,
              amount:0
            };
          }else{
            myArray = {
              scheme_code:$id,
              amount:$data
            };
          }
          masterArray.push(myArray);
        });

        stringify = JSON.stringify(investmentArray);

   return false;
)};

答案 1 :(得分:0)

您应该在事件绑定后使用e.preventDefault()

$("#my-form").on('submit', function(e){

  e.preventDefault();

  // rest stuff

});

答案 2 :(得分:-1)

试试这个:

$(".investment-amount").each(function(e){
   var masterArray = array();
   var stringify = '';
   $(".investment-amount").each(function(e){
      $id = $(this).attr('id');
      $data = $(this).val();
      $myArray = array();

      if ($eamount == 0) {
        myArray = {
          scheme_code:$id,
          amount:0
        };
      }else{
        myArray = {
          scheme_code:$id,
          amount:$data
        };
      }
      masterArray.push(myArray);
    });

    stringify = JSON.stringify(investmentArray);



 e.preventDefault();
)};