2017-04-21 279 views
0

我有这个jqgrid代码在下面,我有一个图片里面,同时它的功能,我正在使用。但点击我的jqgrid里面的按钮,它说Uncaught ReferenceError: clickmeapproved is not defined。我的代码有什么问题或者我使用它们的方式有什么问题?与已拒登的按钮相同的错误。未捕获ReferenceError:未定义的错误

afterInsertRow: function (rowid) { 
       var obj = jQuery("#FiTATimeCorrectionV2List").getRowData(rowid); 
       var FADTLSID = obj.FitaAssignDtlID; 
       if (FADTLSID !== undefined) { 
        if (FADTLSID !== "") { 
         var btnApprove = "<input type = 'image' img alt='' src='../../Content/Images/newimages/check.png' style='height:20px;width:20px;' style ='width: 90px' id='btnApproved" + rowid + "' onclick='clickmeapproved(" + rowid + ")' />" 
         var btnDisApprove = "<input type = 'image' img alt='' src='../../Content/Images/newimages/delete.png' style='height:20px;width:20px;' style ='width: 90px' id='btnDisApproved" + rowid + "' onclick='clickmedisapproved(" + rowid + ")' />" 
         jQuery("#FiTATimeCorrectionV2List").setRowData(rowid, { FitaCorForApproval: btnApprove }); 
         jQuery("#FiTATimeCorrectionV2List").setRowData(rowid, { FitaCorForDisApproval: btnDisApprove }); 
         var temp = obj.FitaStatus; 
         if (temp == "Approved") { 
          $("#btnApproved" + rowid).hide(); 
          $("#btnDisApproved" + rowid).hide(); 
         } 
         else if (temp == "Disapproved") { 
          $("#btnApproved" + rowid).hide(); 
          $("#btnDisApproved" + rowid).hide(); 
         } else { 
          $("#btnApproved" + rowid).show(); 
          $("#btnDisApproved" + rowid).show(); 
         } 
        } 
       } 
      }, 

function clickmeapproved(rowid) { 
var ans = confirm("Are you sure you want to approve the request of "+ globalFitaCorName +"?"); 
if (ans) { 
    $.ajax({ 
     type: "POST", 
     url: '../Request/SaveFitaApproval?FAID=' + rowid, 
     dataType: 'json', 
     success: function (response) { 
      alert("Successfully approve!"); 
      $("#FiTATimeCorrectionV2List").trigger("reloadGrid"); 
      FiTATimeCorrectionV2(0); 
      globalFitaCorName = ""; 
      $("#loader").hide(); 
     }, 
     error: function (reponse) { 
      $("#FiTATimeCorrectionV2List").trigger("reloadGrid"); 
      FiTATimeCorrectionV2(0); 
      globalFitaCorName = ""; 
      $("#loader").hide(); 
     } 
    }); 
    } 
} 

回答

0

你 “clickmeapproved” 功能不具有全局范围。在Web检查器中输入“window.clickmeapproved”进行检查。

+0

全球范围?对不起,这是我第一次了解它。 – KiRa

+0

浏览器试图找到附加到窗口对象的“clickmeapproved”功能。它找不到。所以你需要确保“window.clickmeapproved”正在工作。你可以在这里学习JavaScript的范围https://www.w3schools.com/js/js_scope.asp – singh88harman

+0

顺便说一句。感谢您的帮助,我现在就解决它。我编辑了一下我的代码。等待我发布。 – KiRa

0

这是我用来解决我的问题的代码。

var btnApprove = "<input type = 'image' img alt='' src='../../Content/Images/newimages/check.png' style='height:20px;width:20px;' style ='width: 90px' id='btnApproved" + rowid + "' />" 
var btnDisApprove = "<input type = 'image' img alt='' src='../../Content/Images/newimages/delete.png' style='height:20px;width:20px;' style ='width: 90px' id='btnDisApproved" + rowid + "' />" 

我排除了按钮点击它。

$("#btnApproved" + rowid + "").click(function(){ 
    clickmeapproved(rowid); 
}); 
$("#btnDisApproved" + rowid + "").click(function(){ 
    clickmedisapproved(rowid); 
}); 
相关问题