替换文本字段的值并将其显示在另一个文本字段中

时间:2017-02-03 16:33:52

标签: javascript jquery

我正在尝试将在inr中输入的文本第一个文本字段值转换为cad,但我无法这样做, 假设例如: 如果在第一个字段中输入的文本是1000,则它应该在文本字段2中显示20 我尝试过类似的东西

<label>Price</label>

    <input id="price_inr" name="price_inr" type="text" class="validate" required placeholder="Price in INR"  /> 
    <input id="price_cad" name="price_cad" type="text" class="validate" required readonly="readonly" placeholder="Price in CAD" />
    <!-- Script coverts INR to CAD -->
    <script>
        $('#price_inr').change(function() {
        $('#price_cad').val($(this).val());
        });
        $("#price_cad").on("change", function() {
        $(this).val(function(index, value) {
        return value.replace(price_cad.value, price_cad.value/50);
         });
      });
   </script>

2 个答案:

答案 0 :(得分:0)

无需使用两个change事件,您可以一步完成此操作。

$('#price_inr').change(function () {
    $('#price_cad').val($(this).val() / 50);
});

不要忘记将证明者验证添加到第一个输入字段,该字段检查输入的值是否为有效数字。

此处需要注意的另一件事是,当输入失去焦点时,change将被触发。您可以尝试使用keyup,也许它会更符合您的要求。

祝你好运。

答案 1 :(得分:0)

使用jquery 1.11正常工作。

由于“只读”属性,第二部分$("#price_cad").on("change", function()将无效。

更改和编辑将允许来回更改

$('#price_inr').change(function() {
  $('#price_cad').val($(this).val());
});

$("#price_cad").change(function() {
  $('#price_inr').val($(this).val()/50);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<label>Price</label>

    <input id="price_inr" name="price_inr" type="text" class="validate" required placeholder="Price in INR"  /> 
    <input id="price_cad" name="price_cad" type="text" class="validate" required  placeholder="Price in CAD" />