【jQuery】textareaに任意の値をセットする

/*
 * $.setTextarea (jquery plugin)
 * Copyright (c) 2009 gecko(gecko.hp2.jp)
 * Date: 09/10/6(Tue) 14:43
 *
 * 任意のselectの選択されたoptionのtitleを
 * 任意のtextareaに書き込むjQueryプラグイン
 */
$.fn.setTextarea = function(conf){
 conf = $.extend({
 _target : '#'+$(this).attr('id')+'_textarea',
 _split  : ','
 },conf);
 $(this).change(function(){
 var _selectText = $("option:selected",this).attr('title'),
 _splitText,
 _result = '',
 _textArea = $(conf._target);
 if(_selectText){
 _splitText = _selectText.split(conf._split);
 if(_splitText != ''){
 _result = _splitText.join('\n');
 }
 }
 _textArea.val(_result);
 });
 return this;
};
<script type="text/javascript">
<!--
$(function(){
  $('#selectBox').setTextarea();
  $('#hugehueg').setTextarea({_target:'#huge'});
});
//-->
</script>
使い道があるかどうかは置いておいて。
<select id="selectBox">
<option title="■名前:,■住所:,■電話番号:">何かに関するお問い合わせA</option>
<option title="■名前:,■住所:">何かに関するお問い合わせB</option>
</select>
<br/>
<textarea id="selectBox_textarea"></textarea>

<select id="selectBox"> <option>選択してください</option> <option>会員情報関連</option> <option>プレイ中の不具合関連</option> <option title="■英雄名:,■城名:,■ユニット種別:">プレイ中の不具合関連(英雄が帰還しない)</option> <option title="■英雄名:,■城名:">公式サイト関連</option> </select> <br/> <br/> <textarea id="selectBox_textarea"></textarea>

デフォルトでは
指定したidのselectで選んだoptionのtitleの文字列を
指定したid_textareaのtextareaのvalueにセットする。

オプションとしては

$("selectとか").setTextarea({
  _target : "textareaのidなど",
  _split   : ","
});

_target は optionのtitleを挿入したいtextareaのidなりなんなり
_split は optionのtitleの中身を挿入するときの改行に使う区切り文字( なんとか,かんとか,ふんとか )
汎用性は意識してない。


Tags: , ,

 
 
 

One Response to “【jQuery】textareaに任意の値をセットする”

  1. Gravatar of 匿名 匿名
    21. 7月 2010 at 15:38

    Add Your Comment

コメントをどうぞ