登録ウィザードの最後に、 blur()を使用して、ユーザーがフォームに書き込んだ内容を概要ページにコピーしています。そして、これはうまく機能しています。
しかし、いくつかのフィールド値を事前設定し、それらが正しい場合、ユーザーはおそらくその特定のフィールドを操作しないため、何もコピーされません。続行をクリックするだけです。
すべてのテキストフィールド、テキストエリアをトリガーして、それらの値もコピーする方法はありますか?
これは私が使用している機能です:
/**
* Author: Thomas Kile
* Desc: Copy text from a form element into a given tag.
**
* @param string $type type of form element
* @param string $from Id of form element to copy text/value from.
* @param string $to Id of element to copy text/value into.
*/
function copyFormData(type,from,to)
{
switch (type)
{
case 'text': var copied_text = $(from).val(); break; // get input text value
case 'select': var copied_text = $(from+' option:selected').text(); break;
}
$(to).text(copied_text); // put inside this tag
}
そして、これが私がそれを使用している方法です:
$(firstName).blur(function(){ copyFormData('text',firstName,'strong#firstName'); });
$(lastName).blur(function(){ copyFormData('text',lastName,'strong#lastName'); });
trigger()イベントはどこに置くべきですか? リストが getJSON でフェッチされたら、select>first オプションでtrigger()を使用して、チェーンされた選択で次のリストを自動的に入力しました。でもそれはちょっと違った…