Javascript 在ajax函数之外,如何使用参数为ajax调用设置回调函数?
我有一个ajaxForm类来执行ajax,我必须使用form元素上的属性数据回调为它设置回调。。。就像:Javascript 在ajax函数之外,如何使用参数为ajax调用设置回调函数?,javascript,jquery,ajax,function,callback,Javascript,Jquery,Ajax,Function,Callback,我有一个ajaxForm类来执行ajax,我必须使用form元素上的属性数据回调为它设置回调。。。就像: <form method="post" action="/something" class="ajaxForm" data-callback="someFunction"> <!-- FORM STUFF --> </form> 然后我有JS <script> $(function() { $('.ajaxForm
<form method="post" action="/something" class="ajaxForm" data-callback="someFunction">
<!-- FORM STUFF -->
</form>
然后我有JS
<script>
$(function() {
$('.ajaxForm').bind('submit', function(ev) {
$.ajax({
//AJAX STUFF
success: function(response) {
call_the_data_callback_function(response);
}
});
});
});
</script>
$(函数(){
$('.ajaxForm').bind('submit',函数(ev){
$.ajax({
//AJAX的东西
成功:功能(响应){
调用\u数据\u回调\u函数(响应);
}
});
});
});
是否有任何方法可以使用数据回调中设置的名称调用javascript函数,其中一个参数将是ajax响应。您可以执行以下操作
在你的成功功能中
var callBackFunc = $(".ajaxForm").attr("data-callback");//get the function name
callBackFunc.call(this,response); // call the function
这应该行得通。在谷歌上几分钟后,我可以找到以下解决方案:
<script>
var functionName = 'myCallbackFunction';
fn = window[functionName];
if (typeof fn === 'function') {
fn(parameters);
}
</script>
var functionName='myCallbackFunction';
fn=窗口[函数名];
如果(fn的类型==‘函数’){
fn(参数);
}
简单,简单,酷!:D未捕获类型错误:对象myCallbackFunction没有方法“调用”