0

私はjQueryに少し慣れていないので、いくつか質問があります:

1 つのフィールドを追加し、1 つのフィールドを削除できる 2 つのリンクを含むフォームがあります。

  1. しかし、問題は 10 フィールドで止めたいので、最大 10 フィールドを追加できますか?

  2. 2 番目の問題は、最小 1 フィールドで停止する方法です。現在、[削除] をクリックし続けると、すべてのフィールドが 0 に削除されます。

  3. 最後の質問ですが、送信ボタンを押したときに、送信ボタンを押す前にいくつのフィールドにいたかを覚えておきたいのですが?

誰かが私を助けてくれることを願っています、それは私が本当に早く必要なものです:-D

jQuery:

var i = $('input').size() + 1;
max = 10;

$('#add').click(function() {
    $('<div><input type="text" class="field" name="dynamic[]" value="Some text..." /></div>').fadeIn('slow').appendTo('.inputs');
    i++;
});

$('#remove').click(function() {
if(i > 1) {
    $('.field:last').remove();
    i--; 
}
});

HTML:

<a href="#" id="add">Add +1</a> | <a href="#" id="remove">Remove -1</a>
<form method="post">
    <div class="inputs">
        <div>
            <input type="text" name="dynamic[]" class="field" value="Some text..."/></div>
        </div>
    <input name="submit" type="submit" class="submit" value="Submit"/>
</form>
4

3 に答える 3

0
$('#add').click(function() {
   if ($('.field').length <= 10) {
    $('<div><input type="text" class="field" name="dynamic[]" value="Some text..." /></div>').fadeIn('slow').appendTo('.inputs');
    i++;
 }else
   alert("10 Completed");
});

$('#remove').click(function() {
  if ($('.field').length < 1) {
    $('.field:last').remove();
    i--; 
   }else
     alert("only one");
});
于 2013-05-14T13:22:20.287 に答える
0

他の2つの答えは私のものと同じです。フィドルをセットアップします。

http://fiddle.jshell.net/Aq7rS/

var i = $('input').size() + 1;
max = 10;

$('#add').click(function() {

if($('.field').length < 11){
    $('<div><input type="text" class="field" name="dynamic[]" value="Some text..." /></div>').fadeIn('slow').appendTo('.inputs');
        i++;
    }

});

$('#remove').click(function() {
    if($('.field').length > 1){
        if(i > 1) {
            $('.field:last').remove();
            i--; 
        }

    }
});
于 2013-05-14T13:24:04.870 に答える