0

ドロップダウンメニューがあります。商品タイプあり。製品タイプには値が関連付けられています (ドロップダウンから)。値はマシン グループに対応します。

したがって、各オプションには、マシン名、値、マシン グループの 3 つの変数が必要です。

マシン名を取得でき、マシンの値を取得できます (そして、それらを別のフィールドに表示できます)...私が理解できなかったのは、値をマシン グループに変更する方法です。

jQuery('#MachineName').bind('change', function()
    {

      //get selected value from drop down;
        var selectedValue = jQuery("#MachineName").val();

      //populate a text field with the selected drop down value
        jQuery("#MachineValue").val(selectedValue);

私がやりたいのは、その MachineValue を保持し、別のテキスト フィールドに並べ替えられた MachineGroup を入力することです

私はそれを次のようなものに実行しようとしています

    switch(jQuery(this).val()){
    case "236" : newVal = "8";
    break;

しかし、値を「変更」したくありません。「if then」タイプのフィルターを実行したいだけなので、次のようなものかもしれません。

    '236' => "8", '237' => "5",

「MachineValue に基づいて MachineGroup を割り当てる」と適切に言う方法がわかりません (そして、別のテキスト フィールドにデータを入力します)。

最終的には 3 つのフィールドを持つことになります。ドロップダウン、MachineValue および MachineGroup。ドロップダウンと値が完了したら、グループを実行するだけです。(そして、MachineName に基づいてグループを並べ替えることができます...どちらが簡単かはわかりません)

4

1 に答える 1

0

クライアント側で最も簡単なのは、サーバーにマークアップにいくつかの追加data-属性を追加させることです。jQuery.data()これらを非常に簡単に取得できます。

html:

<option value="5" data-group="foo" data-name="Bar">Bar</option>

JS:

$('select').change(function(){
    var $sel=$(this).find('option:selected');
    var machineGroup=$sel.data('group');
    var machineName=$sel.data('name');
    var value= $sel.val()// or $(this).val();
});

API(最初の一連の例を読んでください。機能は元のAPIにはありませんでした)

http://api.jquery.com/data/

于 2012-06-17T03:36:09.313 に答える