2016-10-05 130 views
1

我在按钮单击事件中调用第三方API的函数。jQuery成功提交表单

查看下面,按钮点击tp.callFunction,只有在成功我想res.myNum存储在一个隐藏的领域,并提交表单。

我感到困惑的部分是写入或扩展的位置(.success(functionOne)),以便我可以为表单提交一个代码。

$('[button1]').on('click', function() { 
    var getdatafrom = { 
     param1: $('input:text').val() 
    }; 

    tp.callFunction(getdatafrom) 
    .success(functionOne) 
    .error(functionFail); 
    return false; 
}); 

function functionOne(res) { 
    alert("Sample: " + res.myNum); 
}; 

function functionFail(res) { 
    alert("Error: " + res.errormessage); 
}; 

我知道我们可以做到这一点在阿贾克斯后像下面

$.ajax({ 
     data: { 'field1' : email }, 
     type: 'GET', 
     dataType: 'json', 
     url: 'url.php', 
     beforeSend : function(){ }, 
     success: function(answer){ 
      if(answer.error === false){ 
        $('#greatForm').attr('validated',true); 
        $('#greatForm').submit(); 
      } 
      if(answer.error === true){ 
       //display the errors 
      } 
     } 
    }); 
+0

如果你知道如何在匿名函数中做到这一点,它会不会在命名函数中完全相同? – adeneo

回答

2

,如果你希望只存储值,并提交形式,成功的功能, 应该像下面,

function functionOne(res) { 
    $('#idOfYourHiddenField').val(res.myNum); 
    $('#greatForm').submit(); 
}; 

我认为functionOne函数在您的第三方api成功后正确调用。