2017-11-10 23 views
0

に提出します。配列に転送するデータが1つあります。 データは次のようになります - | PO:2005 | 12121211212121、|数量:45 | BIN:110 | eBay | 11/6/2017- | PO:2165 | 333333333、|数量:54 | BIN:20 | google | 11/6/2017- |同じフォームの異なるデータを複数回入力してGoogleシート

最初に私はユーザーにJSを転送し、配列からフォームにすべてのデータを入れ、フォームを送信します。

ような配列(6) "PO:2005"、 "12121211212121"、 "数量:45"、 "BIN:110"、 "オークション"、 "2017年11月6日"] index.html:62 (6)["PO:2165"、 "333333333"、 "数量:54"、 "BIN:20"、 "Googleの"、 "11/6/2017"]

フォームが複数回提出しなければならないが、Googleのシートの上に私はこれは私のメインのHTML

で最初の1

のためのデータを得ました

答えて

0

あなたは、同時に提出されたフォームを処理するために、Googleスプレッドシートを設定しましたか?

あなたは以下の例に従うことがあります https://medium.com/@dmccoy/how-to-submit-an-html-form-to-google-sheets-without-google-forms-b833952cc175


は限り、あなたの複数の提出と、彼らは私が(に提出するシートなしで)言うことができる限り働いているようです。コードをステップ実行すると、フォームで値が更新されているのがわかり、すべてが正常に解析されたようです。それは問題が受信側にあると私に信じさせるものです。

  1. Googleスプレッドシートの列にあなたの名前を持っていると<input name="">マッチを形成する:私は次のようでした、それは私のために動作させるために

    。お使いのGoogleスプレッドシートで

  2. ツール - >スクリプトエディタに移動して、ここからスクリプトを挿入します。https://gist.github.com/mhawksey/1276293
  3. スクリプトエディタドゥ実行 - >実行機能 - >セットアップ
  4. でスクリプトエディタドゥPublish->の展開にそれは我々が
  5. に掲載しますものだとして、ウェブアプリとして...
    • セットのセキュリティレベルとサービスを有効(最も可能性が高いとしても、匿名で「私」とアクセス「誰でも、として実行)
    • は、URLをメモしておいてください
    • のようになります。 210
  6. ajax POST関数をどのように呼び出すかを更新しました(ブートストラップバリデータが動作しませんでした)。実際には1つのPOSTだけが送信されていたので、私はそれを削除して、すべてが期待通りに機能します。)

コード:作業コードを表示

$('#googleSheetInsert').on('submit', function(e) { 
     // Prevent form submission 
     e.preventDefault(); 

     // Get the form instance 
     var $form = $(e.target); 

     // Use Ajax to submit form data 
     var url = 'https://script.google.com/macros/s/<GIBERISH>/exec'; 
     var redirectUrl = 'index.html'; 
     // show the loading 
     $('#postForm').prepend($('<span></span>').addClass('glyphicon glyphicon-refresh glyphicon-refresh-animate')); 
     var jqxhr = $.post(url, $form.serialize(), function(data) { 
      console.log("Success! Data: " + data.statusText); 
     // $(location).attr('href',redirectUrl); relocation 
     }) 
      .fail(function(data) { 
       console.warn("Error! Data: " + data.statusText); 
       // HACK - check if browser is Safari - and redirect even if fail b/c we know the form submits. 
       if (navigator.userAgent.search("Safari") >= 0 && navigator.userAgent.search("Chrome") < 0) { 
        //alert("Browser is Safari -- we get an error, but the form still submits -- continue."); 
        $(location).attr('href',redirectUrl);     
       } 
      }); 
    }); 

画像:

Submitting your test data a couple times
Form updated

+0

ありがとう、私が指示することを試みる、しかし、私はエラーの多くを得ました。 – Nathan

+0

私はそれが(クロームでとにかく)働くことを管理したので指定することができます。 – crapier

関連する問題