2012-03-01 18 views
0

ラジオボタンのグループから値を渡すときのベストプラクティスは何か不思議です。特に、ラジオボタンが複数の値を持つことができる場合。ラジオボタングループから複数の値を渡す

私の例では、パーティーで2種類の食べ物、1)ケーキ、2)ケーキとワッフルを探しているとしましょう。

HTML:

<input id="Cake" name="food" type="radio" value="true"> 
<input id="Both" name="food" type="radio" value="true,false" checked="checked"> 

のJavaScript(jQueryの):最後の値については

var testString = $('input[name=food]:checked').val(); 

- "真、偽の" 私は文字列の配列を取得するには、文字列を分割しています - が、最後に、実際には真の値、つまり真偽値が必要です。つまり、文字列を解析してブール値に変換するだけの別の関数を記述する必要があります。

最後に、2つの値を "true、false"にする価値があるのでしょうか、とにかく私はちょうど "all"と言ってもよいでしょうか?後者の場合、 "all"をtrue、falseの配列に変換し、バックエンドのjavascript関数に渡します。

+1

可能であれば、値フィールドに複数の値を格納しないようにします。一般に、単一の値を格納する属性の複数の値に対してデリミタを使用する必要があるのは、通常は悪い考えです。 – user17753

+2

チェックボックスのグループは良くないでしょうか? *当てはまるもの全てをご確認ください*? – Quentin

+0

@クエンティンそれかもしれない - しかし、それは私が動作するように残っているものです。 – firedrawndagger

答えて

1

さて、あなたは「すべての」技術を行うことができますか、あなたはそうのような文字列の配列を変換することができます:

var output = $.map(arrayOfStringsHere, function(item, index) { 
    return Boolean(item); 
}); 

// output should == array of booleans 

は行くことを与えます。あるいは、チェックボックスの提案に行ってください。より良いかもしれない。

関連する問題