Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript:将Google表单单元格值作为变量传递到POST URL_Javascript_Arrays_Json_Post_Google Sheets Api - Fatal编程技术网

JavaScript:将Google表单单元格值作为变量传递到POST URL

JavaScript:将Google表单单元格值作为变量传递到POST URL,javascript,arrays,json,post,google-sheets-api,Javascript,Arrays,Json,Post,Google Sheets Api,所以我有一段代码,它应该从google工作表中获取一个项目id并将其附加到URL中。我已经添加了加号(+),但仍然无法从google工作表中选择项目id。没有此参数将无法过帐。它没有抛出任何错误,但仍然无法发布到项目的系统。下面是代码:我做得不对的是什么 function sendBudget(){ var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getActiveSheet(); // used g

所以我有一段代码,它应该从google工作表中获取一个项目id并将其附加到URL中。我已经添加了加号(+),但仍然无法从google工作表中选择项目id。没有此参数将无法过帐。它没有抛出任何错误,但仍然无法发布到项目的系统。下面是代码:我做得不对的是什么

 function sendBudget(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();  
  // used getLastRow() function [1] to narrow the array to have only cells with data.
  var range = sheet.getRange("AO2:AO"+sheet.getLastRow()).getValues();
  var searchString = "3";

  for (var i = 0; i<range.length; i++) {
    if(range[i][0] == searchString) {
      var lastRow = sheet.getRange(2+i,1,1,41).getValues(); 
      var project_id = lastRow[0][40];
      var data = {

        'amount':lastRow[0][7]*10,


      };
      var payload = JSON.stringify(data);
      var options = {
        'method': 'POST',
        'Content-Type': 'application/json', 
        'payload' : data,
      };
      var url = 'https://vnext.10000ft.com/api/v1/projects/'+ project_id +'/budget_items?item_type=TimeFeesDays&auth=token';
      var response = UrlFetchApp.fetch(url , options);
      if (response.getResponseCode() === 200) {
      var json = JSON.parse(response);
      var id = json["id"];
      sheet.getRange(2+i, 41).setValue(4); 
      }
    else { 
      sheet.getRange(2+i, 41).setValue(5);
    }
  }
  }}
函数sendbudent(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sheet=ss.getActiveSheet();
//使用getLastRow()函数[1]缩小数组范围,使其仅包含包含数据的单元格。
var range=sheet.getRange(“AO2:AO”+sheet.getLastRow()).getValues();
var searchString=“3”;

对于(var i=0;i我意识到项目id选择了错误的单元格,因此所做的所有更改都是变量中的行号:

var project_id = lastRow[0][40];

Hello@levi您的代码似乎没有任何编程错误。我可以请您分享您正在使用的工作表吗?至少,您可以描述一下您的工作表的哪一列是项目ID以及它们是如何排列的吗?此外,您可以试着使用
Logger.log(url)
在创建您的
url
之后,为了打印它并可能找到发生的情况。CheersHi@carlesgg97,显然我在定义变量项目id时使用了错误的行号,但没有注意到这一点。在您告诉我有关该表的情况后,我回去手动计数,并意识到它应该是var project_id=lastRow[0][39];。感谢您的帮助。