連結項目のいずれかが未入力の場合の挙動

suzieさん (2015-12-17 15:01:17) bkan-osaka.jp/test/test2/contact/form.html

かなり前に「連結項目をさらに連結させられるか(連結のネスト)」という質問をさせていただいたものです。

今回4.2.2にバージョンアップさせていただきまして、かなり使いやすくなってとても素晴らしいです!ありがとうございます。
そこで、上記質問の要望について可能かどうか、再度試しております。

<input type="hidden" name="相談者連結" data-join="相談者+具体名" value="">

■やりたいこと:
ラジオボタンで選択肢を選択後、その他の場合はテキストエリアに具体名を記入させる
確認画面や送信メールにて、その他以外を選んだ場合は選択肢のみ、
その他を選んだ場合は選択肢の後ろにカッコでくくった具体名を表示させたい

data-format属性によって具体名をカッコで囲むことはできたのですが、その他以外が選択されている(具体名が記入されていない)場合、連結項目が確認画面で表示されなくなってしまいます。
理想の挙動は具体名がない場合は相談者のみ表示させたいのですが・・・

少し調べさせていただきましたところ、過去の質問にて連結項目は必須でないと挙動がおかしくなるというご返答をされていたのですが、それは最新バージョンでも変わっていないのでしょうか?

何卒よろしくお願いいたします。

Re:連結項目のいずれかが未入力の場合の挙動

和田 (2015-12-21 15:11:44) www.synck.com

現状のバージョンでも連結項目の仕様自体は変わっていないため、その挙動に関してはちょっぴり難しいと思います。もう少し柔軟に設定できるとよいなとは思っているのですが、なかなか良い方法が思いつかないため、現状こんな感じになっておりまして・・・。

Javascriptでガッツリカスタマイズしてしまえば簡単にできるといえばできるのですが、そうすると汎用性がなくなってしまうので・・・。将来的なアップデート項目として検討させて頂きます!

Re:連結項目のいずれかが未入力の場合の挙動

suzieさん (2015-12-22 13:23:12) bkan-osaka.jp/test/test2/contact/form.html

お返事ありがとうございます。
やはりそうなのですね〜

ちなみに、javascriptは相変わらず不得手な為以前のバージョンでもカスタマイズは叶っていないのですが、するとしても以前とはやり方が変わってきますかね?
参考までに、ヒントだけでもご教示いただきたく…

最初は連結のhiddenを表記しておいて、
確認画面へのボタンを押した時点で
その他(具体名)の入力がある場合→そのまま
その他(具体名)の入力がない場合→連結のhiddenにdata-post-disable="1"を追加
→送信
のような感じでしょうか??

そしてこの「確認画面へのボタンを押した時点」の書き方が良くわからず・・・
以前は「mfp.extend.event(’send’,function(){ここに処理});」でいけると教えていただきましたが変わっていますか?

ぜひご教示いただけるとありがたいです。
何卒よろしくお願いいたします。

Re:連結項目のいずれかが未入力の場合の挙動

和田 (2016-01-07 12:52:20) www.synck.com

イメージ的にはそのような感じです。
すいません回答ががっつり遅くなりまして・・・。

イメージとしては
mfp.extend.event(’check’,
function(obj){
if(mfp.$(’element1’).value != "" && mfp.$(’element2’).value){
// id”element1”と”element2”が初期値ではない場合
mfp.$(’element3’).value = mfp.$(’element1’).value + ’(’ + mfp.$(’element2’).value + ’)’;
}
else if(mfp.$(’element1’).value){
mfp.$(’element3’).value = mfp.$(’element1’).value;
}
}
);
こんなような感じでしょうか。checkはエレメントのいずれかがチェックされるときに実行されるイベントになるのですが、idを振ったエレメントの値が空じゃない場合に結合したものをidがelement3のものにvalueをセットする。みたいな感じのものです。

element3はhiddenではなくtextにする必要があります。

Re:連結項目のいずれかが未入力の場合の挙動

suzieさん (2016-02-15 15:34:57) bkan-osaka.jp/test/test2/contact/form.html

レスポンス大変遅くなり申し訳ありません。
丁寧なお返事ありがとうございます!
教えてくださったソースとにらめっこしながら頑張ってカスタマイズしたいと思います。