当我选中复选框时如何将值text1复制到text2?

时间:2014-04-07 17:33:16

标签: javascript php jquery

这是我的HTML代码

<input type="text" name="txt1" id="txt1" placeholder="txt1" class="form-control">
<p><input type="checkbox" name="checkbox" id="checkbox" class="checkbox">copy address</p>
<input type="text" name="txt2" id="txt2" placeholder="txt2" class="form-control">

是这个脚本

$(".checkbox").change(function() {
var txt1filed = $(this).parent();
var txt1 = $(this).val();
var txt2filed = $('#txt2').parent();
var txt2 = $('#txt2').val();    
  if(this.checked) {
    $('#txt2').val($(this).val())
  }
  else {

  }        
});

如何编辑此代码。如果我需要将值text1复制到text2并禁用它。取消选中删除值text2

3 个答案:

答案 0 :(得分:2)

$(".checkbox").change(function() {
  if(this.checked) {
      $('#txt2').val($('#txt1').val()).prop('disabled', true);
  }
  else {
      $('#txt2').val('').prop('disabled', false);
  }        
});

here's the working jsFiddle

答案 1 :(得分:0)

<!DOCTYPE html>
<html>
  <head>
      <script src="jquery.min.js"></script>
      <script type="text/javascript">

        jQuery(window).load(function() {

          $("#checkbox").change(function() {
            var txt1 = $("#txt1").val();
            var txt2 = $("#txt2").val();

            if(this.checked) {
              $('#txt2').val(txt1);
              $('#txt2').attr("disabled","disabled");
            }
            else {
              $('#txt2').val('');
            }        
          });

        });

      </script>

  </head>
  <body>

    <input type="text" name="txt1" id="txt1" placeholder="txt1" class="form-control">

    <p>
     <input type="checkbox" name="checkbox" id="checkbox" class="checkbox">copy address
    </p>

    <input type="text" name="txt2" id="txt2" placeholder="txt2" class="form-control">

  </body>

</html>

答案 2 :(得分:0)

你可以试试这个

$(".checkbox").on("change",function(){

 if (this.checked ) {
            $("#txt2").val($("#txt1").val());
            $("#txt2").attr("disabled", "disabled");
        } else {
            $("#txt2").removeAttr("disabled");
            $('#txt2').attr("value", "");
            $("#txt2").attr("placeholder", "txt2")  ;
        }    

});