2016-08-28 5 views
0

私は標準的なフォームを持っていて、ページのいくつかのイメージはページのランダムな場所に配布されています。画像の中から1つを選択してクリックし、入力に情報を追加してから[送信]ボタンをクリックします。問題は、ランダムに配布されたイメージがクリックされたという事実について、フォームを通じて情報を送信するための良い解決策がないことです。私の唯一のアイデアは画像URLを作ることでしたが、入力から情報を渡すことはできません。標準的なフォーム情報をクリックした画像をどのように組み合わせることができますか?例えばCakePHP 3 imageクリック情報とフォーム

+0

画像にクリックイベントリスナーを追加することはできません。また、クリックすると隠れた入力フィールドに情報が保存されますか? – user3733648

+0

あなたの提案の簡単な例を提示できますか? – Annabelle

答えて

2

ここ

<form> 
     <input type="hidden" name="image_info" > 
     <!-- you other input fields --> 
     <input type="text" name=".." > 
     ... 
     ... 
    </form> 

し、HTMLにあなたが

<img src="..." data-info="image info to be placed in hidden field" title="..." alt="..." /> 
<img src="..." data-info="image info to be placed in hidden field" title="..." alt="..." /> 

のようにしてhavascript

<script> 
$('img').on('click', function() { 
    var img = $(this), 
     img_field = $('input[name=image_info]'); 

    img_field .val(img.data('info')); 
}); 
</script> 
に異なる画像タグ を持つ隠しフィールドが含まれているサンプルフォームがあります

これは完全なコードではありませんが、どのように実装できるのかというアイディアです。

+0

私はあなたが今何を意味しているのか理解していますが、それは私のための解決策ではありません。そして、ここには本当に重要で鍛えられた機能があります。アイデアのための+ 1ポイントしかし、私のための解決策はまだありません – Annabelle

+1

@Annabelle JSは、画像がDOMのどこにでも置くことができれば、はるかに簡単で柔軟な解決策です。非JSソリューションは面倒に複雑で、フレーム、セッション、追加のサーバー側の処理などが必要です。また、フォームの内部にイメージを配置し、チェックボックスやラジオボタンにする必要があります。 stackoverflow.com/questions/4790281/is-it-possible-put-image-in-input-type-check-box)。 – ndm

+0

はい、非常に不本意ですが、私は隠された入力とJSを使用してこの機能を終了しました。この問題でセッションを使うのはどれくらい安全ですか?この場合、セッションを使用する方が良いでしょうか? – Annabelle

関連する問題