質問編集履歴
4
コード修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -154,31 +154,23 @@
|
|
154
154
|
|
155
155
|
$(function(){
|
156
156
|
|
157
|
-
var
|
157
|
+
var FormHandlerURL = 'http://example.com/hoge/hoge';
|
158
158
|
|
159
|
-
var
|
159
|
+
var url = FormHandlerURL + '?' + $('#form').serialize();
|
160
160
|
|
161
|
-
|
161
|
+
$('body').append('<div>'+Url+'</div>');
|
162
162
|
|
163
|
-
|
163
|
+
$('body').append('<iframe id="form-handler" height="0" width="0" style="position:absolute; left:-100000px; top:-100000px" src="javascript:false;"></iframe>');
|
164
164
|
|
165
|
-
$('body').append('<div>'+pardotUrl+'</div>');
|
166
165
|
|
167
|
-
$('body').append('<iframe id="pardot-form-handler" height="0" width="0" style="position:absolute; left:-100000px; top:-100000px" src="javascript:false;"></iframe>');
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
console.log(pardotUrl);
|
172
166
|
|
173
167
|
$('.btn2').on('click', function(e){
|
174
168
|
|
175
|
-
|
169
|
+
|
176
170
|
|
177
|
-
|
171
|
+
var iframe = function(callback){
|
178
172
|
|
179
|
-
var iframePardot = function(callback){
|
180
|
-
|
181
|
-
$('#
|
173
|
+
$('#form-handler').attr('src', Url);
|
182
174
|
|
183
175
|
callback();
|
184
176
|
|
@@ -192,7 +184,7 @@
|
|
192
184
|
|
193
185
|
};
|
194
186
|
|
195
|
-
iframe
|
187
|
+
iframe(formPost);
|
196
188
|
|
197
189
|
});
|
198
190
|
|
3
実施内容を追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -143,3 +143,61 @@
|
|
143
143
|
###試したこと
|
144
144
|
|
145
145
|
console.log(url)を$('#form_checker').on('submit', function(e)の前にぶち込むと値が正常に返って来てます。
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
###追記
|
150
|
+
|
151
|
+
スクリプトを下記の様に書き換えても同じ結果だった。
|
152
|
+
|
153
|
+
```javascript
|
154
|
+
|
155
|
+
$(function(){
|
156
|
+
|
157
|
+
var partdotFormHandlerURL = 'http://www2.re-estate.co.jp/l/199442/2016-07-08/6x3';
|
158
|
+
|
159
|
+
var form_for_pardot = document.getElementById("form-for-pardot");
|
160
|
+
|
161
|
+
// console.log($(form_for_pardot.serialize()));
|
162
|
+
|
163
|
+
var pardotUrl = partdotFormHandlerURL + '?' + $('#form-for-pardot').serialize();
|
164
|
+
|
165
|
+
$('body').append('<div>'+pardotUrl+'</div>');
|
166
|
+
|
167
|
+
$('body').append('<iframe id="pardot-form-handler" height="0" width="0" style="position:absolute; left:-100000px; top:-100000px" src="javascript:false;"></iframe>');
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
console.log(pardotUrl);
|
172
|
+
|
173
|
+
$('.btn2').on('click', function(e){
|
174
|
+
|
175
|
+
e.preventDefault();
|
176
|
+
|
177
|
+
//$(this).submit();
|
178
|
+
|
179
|
+
var iframePardot = function(callback){
|
180
|
+
|
181
|
+
$('#pardot-form-handler').attr('src', pardotUrl);
|
182
|
+
|
183
|
+
callback();
|
184
|
+
|
185
|
+
};
|
186
|
+
|
187
|
+
var formPost = function(){
|
188
|
+
|
189
|
+
$('#form_checker').attr('action', 'mail.php');
|
190
|
+
|
191
|
+
$('#form_checker').submit();
|
192
|
+
|
193
|
+
};
|
194
|
+
|
195
|
+
iframePardot(formPost);
|
196
|
+
|
197
|
+
});
|
198
|
+
|
199
|
+
});
|
200
|
+
|
201
|
+
```
|
202
|
+
|
203
|
+
btn2はformのsubmitボタン。また、上記と同時にform action=の部分を空白に書き換えた。
|
2
文意が不明瞭だった部分を改善しました。変数Urlの宣言の位置を前に持ってきましたが、事象はそのまま出てます。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
FormをSubmitした時の
|
1
|
+
FormをSubmitした時の値の送信先を2つ設定したい
|
test
CHANGED
@@ -4,15 +4,23 @@
|
|
4
4
|
|
5
5
|
iframeでPOSTしようとしているのはPOST先の制限です。
|
6
6
|
|
7
|
-
index.phpのフォームを入れてもらうとcheck.php(確認ページ)に遷移するので、そちらにjavascript入れて確認後の送信と同時にPOSTしたいです。
|
7
|
+
index.phpのフォームを入れてもらうとcheck.php(確認ページ)に遷移するので、そちらにjavascript入れて確認後の送信と同時にformの方のPOSTとiframeで外部ドメインに値の挿入をしたいです。
|
8
|
+
|
9
|
+
http://help.pardot.com/customer/ja/portal/articles/2125981-form-handlers-advanced-topics
|
10
|
+
|
11
|
+
を参考にiframeでの値の送信を考えてます。
|
8
12
|
|
9
13
|
|
10
14
|
|
11
15
|
###発生している問題・エラーメッセージ
|
12
16
|
|
13
|
-
WindowsのFirefox(ver.48)でのみ
|
17
|
+
WindowsのFirefox(ver.48)でのみフォームの送り先(example.com)に値が渡ってません。
|
14
18
|
|
19
|
+
form-checkerのPOSTの方は問題なく動作しています。iframe用のUrlの生成までは確認出来ています。
|
20
|
+
|
15
|
-
Chrome、IEでは
|
21
|
+
Chrome、IEでは正常に値が渡ることを確認済みです。
|
22
|
+
|
23
|
+
|
16
24
|
|
17
25
|
|
18
26
|
|
@@ -24,11 +32,11 @@
|
|
24
32
|
|
25
33
|
var FormHandlerURL = 'http://example.com/hoge/hoge';
|
26
34
|
|
35
|
+
var url = FormHandlerURL + '?' + $('#form').serialize();
|
36
|
+
|
27
37
|
$('body').append('<div>'+Url+'</div>');
|
28
38
|
|
29
39
|
$('body').append('<iframe id="form-handler" height="0" width="0" style="position:absolute; left:-100000px; top:-100000px" src="javascript:false;"></iframe>');
|
30
|
-
|
31
|
-
var url = FormHandlerURL + '?' + $('#form').serialize();
|
32
40
|
|
33
41
|
$('#form_checker').on('submit', function(e){
|
34
42
|
|
@@ -96,6 +104,40 @@
|
|
96
104
|
|
97
105
|
このPHPは名前と住所のデータが一緒になってしまっていたのを無理矢理分離する為のものです。
|
98
106
|
|
107
|
+
```html
|
108
|
+
|
109
|
+
<form action="mail.php" method="post" id="form_checker">
|
110
|
+
|
111
|
+
<fieldset>
|
112
|
+
|
113
|
+
<legend>Contact details</legend>
|
114
|
+
|
115
|
+
<dl>
|
116
|
+
|
117
|
+
<?php Conf();?>
|
118
|
+
|
119
|
+
</dl>
|
120
|
+
|
121
|
+
<div class="btn2"><?php Button();?></div>
|
122
|
+
|
123
|
+
</fieldset>
|
124
|
+
|
125
|
+
<input type="hidden" name="page" value="<?php echo "$page"; ?>" />
|
126
|
+
|
127
|
+
</form>
|
128
|
+
|
129
|
+
<form id="form" style="display:none;">
|
130
|
+
|
131
|
+
<?php ConfDisp();?>
|
132
|
+
|
133
|
+
</form>
|
134
|
+
|
135
|
+
</div>
|
136
|
+
|
137
|
+
```
|
138
|
+
|
139
|
+
Confの中身はConfDispで整形前のフォームの送信データです。既存のデータの流れを変更しない為にこの様な処理をしています。formの中身をserializeしてform-checkerのPOSTと同時にiframeで値を送りたいです。
|
140
|
+
|
99
141
|
|
100
142
|
|
101
143
|
###試したこと
|
1
example\.comに修正しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
$(function(){
|
24
24
|
|
25
|
-
var FormHandlerURL = 'http://
|
25
|
+
var FormHandlerURL = 'http://example.com/hoge/hoge';
|
26
26
|
|
27
27
|
$('body').append('<div>'+Url+'</div>');
|
28
28
|
|