javascript - AJAX 在 JQUERY 确认对话中不起作用

标签 javascript jquery ajax

我正在尝试在用户确认 JQUERY confirm 后调用 ajax 函数对话。但是在输入确认部分之后。它给了我一个错误并且不起作用。请注意,将 ajax 函数放在确认对话框之外时可以正常工作。

我的代码是

 function approveApp(intAppId) {      
         $.confirm({
             title: 'Are you sure you want to approve this application?',
             content: '',
             buttons: {
                 confirm: function () {
                     var test = intAppId;
                     alert(test) //This alerts the word 'Undefined'
                     var intAppId = intAppId;
                     $.ajax({
                         url: 'adminreport.aspx/approveApp',
                         type: 'POST',
                         data: JSON.stringify({ intAppId: intAppId }),
                         contentType: "application/json; charset=utf-8",
                         dataType: "json",

                         success: function (data) {
                             if (data.d) {
                                 alert("It worked!");
                             }
                         }
                     });
                 },
                 cancel: function () {

                 }
                 }
             }
         });

     }

最佳答案

您将参数作为 intAppId 传递给外部函数。

但是,您还在内部函数中声明了该变量并使用它(大概)保存外部参数:

var intAppId = intAppId;

这个重新声明隐藏了外部变量。您可以完全删除它并在您的 ajax 调用中使用该参数。

关于javascript - AJAX 在 JQUERY 确认对话中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45419016/

相关文章:

javascript - JCrop 为图像添加高度和宽度

javascript - 如何在 javascript/jquery 中获取选中的复选框标题值?

javascript - 将 ajax success() 事件中的数据与同一 .js 文件中的其他事件处理程序一起使用

javascript - AJAX 请求 - 获取成功请求的 HTTP 代码/响应 header

javascript - 网络托管的 javascript 文件可以包含在 Metro 应用程序中吗?

javascript - 如何获取图片链接以在 iframe 中打开其他文件

javascript - 隐藏页面元素上的部分 html 代码

javascript - 在模态中显示原始 JSON

jquery - Skrollr 插件(数据-(?))

ajax - 无法保留 Drupal 7 中依赖选择框的值