Jquery のセレクターは非常に強力なので、select のオプション オブジェクトを追加するときに、
/**//*
ファイル名: jquery.liu.select.js
機能の説明: この js ファイルは、主に select の操作を実装する jquery クラス ライブラリのプラグインです。
作成者: John Liu
執筆日: 2008/03/12
*/
//選択項目の数を取得します
jQuery.fn.size = function()
{
return jQuery (this).get(0).options.length;
}
//選択された項目のインデックスを取得します
jQuery.fn.getSelectedIndex = function()
{
return jQuery(this ).get(0).selectedIndex;
}
//現在選択されている項目のテキストを取得します
jQuery.fn.getSelectedText = function()
{
if(this.size() == 0)
{
return "ドロップダウン ボックスにオプションはありません"
}
else
{
varindex = this .getSelectedIndex();
return jQuery( this).get(0).options[index].text;
}
}
//現在選択されている項目の値を取得します
jQuery.fn.getSelectedValue = function()
{
if(this.size() == 0)
{
return "ドロップダウン ボックスに選択された値がありません"; }
else
{
return jQuery(this ).val();
}
}
//select に値を持つ項目を選択対象に設定します
jQuery。 fn.setSelectedValue = function(value)
{
jQuery (this).get(0).value = value;
}
//select 内のテキストを含む最初の項目を選択するように設定します
jQuery.fn.setSelectedText = function(text)
{
var isExist = false;
var count = this.size()
for(var i=0;i{
if(jQuery(this) .get(0).options[i].text == text)
{
jQuery(this).get(0).options[ i].selected = true;
isExist = true;
}
}
if(!isExist)
{
alert("この項目は存在しませんドロップダウン ボックスに");
}
}
//選択したインデックス項目を設定します
jQuery.fn.setSelectedIndex = function(index)
{
var count = this.size();
if(インデックス >= カウント || インデックス {
alert("選択されたアイテムのインデックスが範囲外です");
{
jQuery(this).get(0).selectedIndex =index ;
}
}
//選択項目に値を持つ項目があるかどうかを判断します
jQuery .fn.isExistItem = function(value)
{
var isExist = false;
var count = this.size();
for(var i=0;i{
if(jQuery(this).get(0).options[i ].value == value)
{
isExist = true;
>}
return isExist;
}
//追加して 1 つの項目を選択します。表示される内容はテキストで、値は value です。項目の値がすでに存在する場合は、
jQuery.fn を要求します。 .addOption = function(text,value)
{
if(this.isExistItem(value ))
{
alert("追加される項目の値はすでに存在します"); >}
else
{
jQuery(this).get(0).options.add (new Option(text,value));
}
}
//削除項目が存在しない場合は、
jQuery.fn.removeItem = function (value)
{
if(this.isExistItem(value))
が表示されます。 {
var count = this.size();
for(var i=0;i{
if(jQuery(this).get(0).options[ i].value == value)
{
jQuery(this).get(0).remove(i );
break;
}
}
else
{
alert("削除する項目が存在しません!");
}
}
//select
jQuery で指定されたインデックスを持つ項目を削除します。 fn.removeIndex = function(index)
{
var count = this.size();
if(index > = count || Index {
alert( "削除する項目のインデックスが範囲外です");
}
{
jQuery(this).get( 0).remove(index);
}
//select で選択した項目を削除します
jQuery.fn.removeSelected = function()
{
varindex = this.getSelectedIndex()
this.removeIndex( index);
}
//select
jQuery.fn.clearAll = function()
{
jQuery(this).get(0).options.length = 0;
}