1

別のフィールドの入力に応じて動的に生成する必要がある Radio Button 入力ラベルと値を持つ Wordpress フォームがあります。

フォームがどのように生成されるかを制御することはできません (プラグインを掘り下げることなく、時間が非常に不利なので、迅速な解決策が必要です)

Wordpressは次のようにhtmlを生成しています

<input type="text" name="vfb-22" id="vfb-4-50-22" value="" class="vfb-text  vfb-medium number" />
<label for="vfb-4-50-22" class="vfb-desc">Number * 4.50:></label>     

<span>
  <input type="radio" name="vfb-28" id="vfb-and-then-28-1" value="4.50" class="vfb-radio inline" /> 
  <label for="vfb-and-then-28-1" class="vfb-choice">4.50</label>
</span>

誰かがフィールド A(vfb-22) に値を入力した場合。入力ラジオボタンとラベルの値を A * 現在の値に変更するには、jQuery が必要です。

現在、関連するすべての数値を取得し、別のフィールド (vfb-42) を次のように正しく更新します。

$('#vfb-monthly-tickets-4-50-each-86').change(function() { 
  var number=$('input[name=vfb-86]').val();
  var multiplier=4.50;
  total=number*multiplier;
  $('input[name=vfb-42]').val(total);
})

見逃しているのは、ラジオ ボタン (vfb-28) の値を変更することだけです。私は数回刺されましたが、どちらの価値のあるラベルにも成功しませんでした.

どんな考えにも感謝します

4

2 に答える 2

1

HTMLが常にこのように構成されている場合..これを試すことができます

$('.vfb-text').on('change' , function() {  // change event of textbox
  var $this = $(this);      // cache the selector

  var count = this.value ;  // textbox value
  var cost = $this.nextAll('span:first').find('.vfb-choice').text(); 
  // Label text value
  total=number * cost ;

  $this.next('vfb-desc').text(total);    // populate label
  $this.nextAll('span:first').find('.vfb-radio').val(total); 
  // new value of checkbox
});
于 2012-11-14T17:39:56.653 に答える
0

確かに、これは独自の方法の単なるリファクタリングですが、次のことを試すことができます。

$('input[name=vfb-22]').change(function() { 
  var number=$('input[name=vfb-22]').val();
  var current = $('input[name=vfb-28]').val();

  total=number*current;

  $('input[name=vfb-22]').val(total);
  $('.vfb-choice').text(total);
});
于 2012-11-14T17:32:35.000 に答える