限制复制表格的数量

罗伊·约翰逊(Roy Johnson)

目前,我能够复制表格,但是我想设置一个限制次数(复制)。有没有办法做到这一点,例如,当我希望限制为5时,一旦表格总数达到5,则“添加”按钮将被禁用(当我单击它时,它什么也不做)。但是,当我删除一个表单时,“添加”按钮再次起作用(可以添加表单)。我只允许使用HTML CSS和Javascript。

$(function() {


  var addDiv = $('#addinput');
  var i = $('#addinput p').size() + 1;


  $('#addNew').live('click', function() {
    $('<label>Choose a picture<br><input type="file" ' + i + '" value="" /><img class="target" src="#" alt="Choose and Upload" /><a href="#" id="remNew">Remove</a></label><br>').appendTo(addDiv);
    i++;
    $('fieldset input').change(function() {
      if (this.files && this.files[0]) {
        var $target = $(this).next('.target');
        var reader = new FileReader();
        reader.onload = function(e) {
          $target.attr('src', e.target.result).width(150).height(112);
        };
        reader.readAsDataURL(this.files[0]);
      }
    });

    return false;
  });



  $('#remNew').live('click', function() {

    if (i > 2) {
      $(this).parents('label').remove();
      i--;
    }
    return false;
  });
});
.locationsector {
  border-radius: 5px;
  border: 5px solid black;
  width: 30%;
  margin-left: 0.79%;
  float: left;
  padding: 10px;
}
img {
  text-align: center;
  margin: 2%;
  display: inline-block;
  border: 10px solid #140E26;
  border-radius: 10px;
  padding: 5px;
  width: 150px;
  height: 112px;
}
#addNew {
  background: black;
  margin-left: 2%;
  padding: 5px;
  font-size: 15px;
  color: white;
  display: inline-block;
  width: 100px;
  border: 1px solid #140E26;
  border-radius: 10px;
  cursor: pointer;
  text-align: center;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<fieldset class="locationsector" id="addinput">
  <legend>Test</legend>
  <p>
    <label for="north">Choose a Picture
      <br>
      <input type="file" required="required" />
      <img class="target" src="#" alt="Choose and Upload" />
    </label>
    <br>
    <a id="addNew">Add</a>
  </p>
</fieldset>

在七

您已经有一个柜台i,这很好。这将使您更容易限制复制:

// ...
        $('#addNew').live('click', function() {
            if(i > 5) {
                alert("Reached maximum number of fields.");
                return false;
            }
            $('<label>Choose a picture<br><input type="file" ' + i + '" value="" /><img class="target" src="#" alt="Choose and Upload" /><a href="#" id="remNew">Remove</a></label><br>').appendTo(addDiv);

// ...

alert呼叫是可选的(您提到什么都不做?)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章