2013-09-21 13 views
5

Googleフォームから特定のフィールドを取り出し、htmlページに入力する方法を探しています。ウェブサイトのhtmlに直接Googleフォームを埋め込む

<form> 
     <input id="email" type="text" placeholder="email address" value="email"> 
     <button id="submit" type="submit">Submit</button> 
    </form> 

送信をクリックすると、そのデータが特定のGoogleフォームに送信されます。

おかげ

答えて

13

は、Googleとは別にホストされている独自のフォームを、構築、およびGoogleのフォームに提出したい場合は、GoogleのフォームのPOSTリクエストをエミュレートする必要があります。まず、Googleに送信されているフォームデータを取得し、AJAXを使用して自分のページから送信する必要があります。

フォームデータを取得するには、Chromeのデベロッパーツールを開き、[ネットワーク]タブをクリックします。その後、Googleがホストするフォームにダミーデータを送信します。リストに表示されている最初の項目をクリックします。「formResponse」と表示されます。次に、右側のペインのデータから、「リクエストURL」(自分のフォームが送信される)と「エ​​ントリ」で始まるものの2つをコピーする必要があります。フォームデータセクション(例:「entry.123456」)に入力します。

次に、自分のページにフォームを作成し、AJAXを使用してGoogleにデータを送信します。私はそれをやった方法は、あなたのフォームが独自のドメインに提出しようとしないように、フォームの送信をハイジャックするのjQueryを使用することです:

$('.my-form').on('submit', function() { 
    e.preventDefault(); 
    $.ajax(
    type:"POST" 
    url: "https://docs.google.com/forms/d/your-form-id/formResponse" 
    data: { 
     'entry.12345': $('.your-form-input').val() 
    } 
); 
} 
+0

e.preventDefault 'で' e'は何ですか() ; '? – phase

+1

'submit '、function(e){'それは関数へのイベント引数です –

関連する問題