Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.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 为什么单击div元素后我会被重定向?_Javascript_Jquery_Html_Google Apps Script - Fatal编程技术网

Javascript 为什么单击div元素后我会被重定向?

Javascript 为什么单击div元素后我会被重定向?,javascript,jquery,html,google-apps-script,Javascript,Jquery,Html,Google Apps Script,我在谷歌表单的背面构建了一个表单,并在其中一个div上创建了一个单击事件。出于某种原因,当我单击div时,它会正确执行,显示部分内容,但会立即将我重定向到另一个URL。知道为什么吗 谷歌脚本: function doGet(e) { return HtmlService .createTemplateFromFile('index') .evaluate() .setSandboxMode(HtmlService.SandboxMode.NATIVE); } function writ

我在谷歌表单的背面构建了一个表单,并在其中一个div上创建了一个单击事件。出于某种原因,当我单击div时,它会正确执行,显示部分内容,但会立即将我重定向到另一个URL。知道为什么吗

谷歌脚本:

function doGet(e) {
 return HtmlService
 .createTemplateFromFile('index')
 .evaluate()
 .setSandboxMode(HtmlService.SandboxMode.NATIVE);
}

function writeForm(form) {
  try {  

      var companyName = form.companyName; //these match to the named 
      fields in your form

      var ss = SpreadsheetApp.openById('126iD9i- 
      KH_aV2WDUcwpUB52CS43rMxXklQjYz4HgPjM'); //the ID of the 
      spreadsheet you want to write to

      var sheet = ss.getActiveSheet();
      var newRow = sheet.getLastRow()+1;//go to the first blank row

      var range = sheet.getRange(newRow, 1);    
      range.setValue(companyName);

  } catch (error) {

      return error.toString();
  }
}
HTML:


我为大量的代码表示歉意,并感谢任何人花时间查看它,请告诉我这里是否有太多信息,或者您需要的是特定的信息而不是所有的代码。非常感谢您的帮助。

如果我理解正确,问题与此按钮有关:

<button class="accordion" id="accordion1" name="accordion1">
  <h1 id="acc1Header">Company Basics</h1>
  <img id="acc1Button" src ="http://smart-hr.com/img/DataGather_circle_btn_gray.png">
</button>
这里您没有设置type属性,因此它将继承W3C规范的默认属性submit,并且由于您在表单中,它将导致刷新,使您无法看到开始时隐藏的面板

尝试将类型设置为按钮,这将覆盖默认类型,并应防止代码命中服务器

<button class="accordion" type="button" id="accordion1" name="accordion1">
  <h1 id="acc1Header">Company Basics</h1>
  <img id="acc1Button" src ="http://smart-hr.com/img/DataGather_circle_btn_gray.png">
</button>

单击哪个div?如果没有更多信息,我的最佳猜测是您需要防止javascript中表单提交的默认操作。检查这个:正如您确认的,有很多代码。您应该尝试删除/禁用代码,使其不会执行此操作,然后再添加部分,直到执行此操作。在不知道哪个div导致问题的情况下,如@VincentNguyen,可能的候选项是this,它不是div…-改为:对不起,元素实际上是一个按钮。身份证是一致的。我在其中添加了一个click eventListener。完全删除提交输入并将其更改为按钮元素似乎无法解决问题。抱歉,无法有效沟通此问题,这里有一个指向当前表单的链接:就是这样!非常感谢你。标记为答案。很高兴它有帮助;
<button class="accordion" type="button" id="accordion1" name="accordion1">
  <h1 id="acc1Header">Company Basics</h1>
  <img id="acc1Button" src ="http://smart-hr.com/img/DataGather_circle_btn_gray.png">
</button>