0

4 つのテキスト ボックスがあり、オート コンプリートで入力する必要があります。jsfiddle を作成しましたが、データを取得するためにサーバーに送信しているため、実行できません。追加ボタンをクリックすると、入力ボックスの最初の行にのみ追加できますが、2、3、4 などの他の行には追加できません。ありがとう!

http://jsfiddle.net/qF5jU/2/

        $('[name=addAgent]').bind('click', function() {

            var agent = $('[name=selectAgent]').val();
            var agentID =$("#AgentID").val();
            //alert(agent);

            if(agent == ""){
            $.msgBox({
                title:"Agent Name",
                content:"Please search for an agent to Add!"
                });
            return false;
            }

            if($('#container').find('text').length < 4) {
            alert($('#container').find('text').length);             
           $('#Agent1').val(agent);
           $('#AgentID1').val(agentID);
            $( '[name=selectAgent]' ).val('');      
            }else{
                $.msgBox({
                title:"Agent Name",
                content:"You cannot add more than 4 Agents!"
                });
            }
        })
4

2 に答える 2

0

この行は、その名前の最初のボックスの値を取得します。

var agent = $('[name=selectAgent]').val();

クリックされたものの値を取得したい場合は、これを使用します。

var agent = $(this).val();

次に、4 つ未満の部分が何をするのかよくわかりませんが、新しい部分をどこに置くかを決めるコードが必要です。これらの行:

$('#Agent1').val(agent);
$('#AgentID1').val(agentID);

次のように、何らかのループに入れる必要があります。

for (var i=1 ; i <= 4 ; ++i) {
    if (...something to decide if this is where you want it ...) {
        $('#Agent' + i).val(agent);
        $('#AgentID' + i).val(agentID);
    }
}

次のような、ある種の「if」のグループの

if (... 1 is it ...) {
    $('#Agent1').val(agent);
    $('#AgentID1').val(agentID);
} else if (... 2 is it ...) {
    $('#Agent2').val(agent);
    $('#AgentID2').val(agentID);
} else if (... 3 is it ...) {
    $('#Agent3').val(agent);
    $('#AgentID3').val(agentID);
} else  if (... 4 is it ...) {
    $('#Agent4').val(agent);
    $('#AgentID4').val(agentID);
}
于 2013-08-29T22:42:41.790 に答える
0

李さん、ありがとうございます。それは完璧に機能しています。jQuery マイナスシック アイコンを追加し、次に各テキスト ボックスの横に追加して、テキストの削除オプションを提供したいと思います。「-」クリックでカウンターから引くこともできると思いますか?

var counter = 0;

$('[name=addAgent]').bind('click', function() {
            var agent = $('[name=selectAgent]').val();
            var agentID =$("#AgentID").val();
            //alert(agent);

            if(agent == ""){
                $.msgBox({
                    title:"Agent Name",
                    content:"Please search for an agent to Add!"
                    });
                return false;
            }


              alert(counter);   
                if(counter==1){
                    $('#Agent1').val(agent);
                    $('#AgentID1').val(agentID);                      

                }else if(counter==2){
                        $('#Agent2').val(agent);
                    $('#AgentID2').val(agentID);

                }else if(counter==3){
                        $('#Agent3').val(agent);
                    $('#AgentID3').val(agentID);

                }else if(counter==4){
                    $('#Agent4').val(agent);
                    $('#AgentID4').val(agentID);               

                }else{
                    $.msgBox({
                    title:"Agent Name",
                    content:"You cannot add more than 4 Agents!"
                    });
                }
                 $( '[name=selectAgent]' ).val('');


            counter++;

        });
于 2013-08-29T23:25:50.840 に答える