0

私はこれらの2つの行を持っています:

<tr>
  <td class="contenu"><input type="text" name="numart" id="numart"/></td>
  <td class="contenu"><input type="text" name="descart" id="descart"/></td>
  <td class="contenu"><input type="text" name="pdepart" id="pdepart"/></td>
  <td class="contenu"><input type="text" name="pvart" id="pvart"/></td>
  <td class="contenu"><input type="text" name="ageart" id="ageart"/></td>
  <td><a class="plus" title="Rajouter une ligne">+</a></td>
</tr>
<tr>
  <td class="contenu"><input type="text" name="numart" id="numart"/></td>
  <td class="contenu"><input type="text" name="descart" id="descart"/></td>
  <td class="contenu"><input type="text" name="pdepart" id="pdepart"/></td>
  <td class="contenu"><input type="text" name="pvart" id="pvart"/></td>
  <td class="contenu"><input type="text" name="ageart" id="ageart"/></td>
  <td><a class="plus" title="Rajouter une ligne">+</a></td>
</tr>

どのように選択しますか:

<input type="text" name="pvart" id="pvart"/>

から:

<input type="text" name="pdepart" id="pdepart"/>

なぜなら:

pvart= 2*pdepart
4

4 に答える 4

0

まず、JavaScriptの問題を回避するために、重複したIDを解決する必要があります

1つの入力の変更に対応するだけの場合は、2を掛けてから、もう1つの入力に挿入すると、次のようになります。

$("#pdepart").change(function() {
    $("#pvart").val(parseInt($(this).val(), 10) * 2);
});

編集:一度だけやりたい場合:

 $("#pvart").val(parseInt($("#pdepart").val(), 10) * 2);
于 2012-05-06T18:57:46.300 に答える
0

正しいHTMLになるように回答を編集してください。HTMLでは、同じid属性を持つ2つの要素を使用できません。これがページのコーディング方法である場合は、最初にこの問題を修正する必要があります。

事前入力する場合は、javascriptを使用します。

于 2012-05-06T18:57:56.883 に答える
0

正しく入力できると思われる場合は、イベントで次のコード行を試してくださいpvart。おそらく、値を数値に変換するための 追加アイコンのonkeyupイベントpdepartまたはonblurイベントpdepart+

document.getElementById('pvart').value = (+document.getElementById('pdepart').value)*2;
于 2012-05-06T18:59:32.293 に答える
0
$('#pdepart').each(function() {
   if(this.value)
       $(this).next('#pvart').val(parseInt(this.value) * 2);
});

または、イベントを変更する場合は、次の操作を実行できます。

$('#pdepart').on('keyup', function() { //  you can bind any event like focus, change, blur etc
   if(this.value)
           $(this).next('#pvart').val(parseInt(this.value) * 2);
});

ノート:

$(this).next('#pvart')あなたが扱っているinput#pvart次を選択します。input#pdepart

于 2012-05-06T19:16:32.717 に答える