Javascript – jquery verwendet die for-Methode, um den Seitenattributwert eines wiederholten Namens abzurufen, und kann keine Hilfe erhalten.
PHPz
PHPz 2017-05-19 10:17:03
0
3
516

Die Situation ist wie folgt: Ich habe ein Formular, das Eingabeelemente dynamisch hinzufügen muss, und der Name jedes Eingabeelements ist derselbe. Da eine Nicht-Null-Überprüfung erforderlich ist, sollten Sie die Verwendung von jquery in Betracht ziehen, um den Wert jedes Elements abzurufen und zu beurteilen.
Der Code lautet wie folgt:

$("#reg").click(function(){

        for(var i=0;i <= reNum - 1;i++){
            alert(i);
            alert($("input[name='userLoginNo']:eq(i)").val());
        }
    })

Reg ist die Schaltfläche „Senden“ (Typ ist Schaltfläche). Wenn nicht alles leer ist, wird sie gesendet. Aber wenn ich den Wert jeder Eingabe erfassen möchte, kann ich nur undefiniert ausspucken.
Wenn Sie das i in Alert($("input[name='userLoginNo']:eq(i)").val()); in eine direkte Zahl ändern, wie zum Beispiel Alert($("input[name=' userLoginNo ']:eq(0)").val()); kann den Eingabewert normal anzeigen
Bitte helfen Sie, herauszufinden, warum, vielen Dank~

PHPz
PHPz

学习是最好的投资!

Antworte allen(3)
巴扎黑

你eq 中的变量 是字符串,不是变量,需要用"+i+"这种方式

阿神
var check = false;
$("input[name='userLoginNo']").each(function(){
    if($("input[name='userLoginNo']").val() == ''){
        check = true;
    }
    //指针指向
    $(this).focus();
    //结束循环 
    if(check){
    alert('不可为空');
    }
    return;
})
巴扎黑

变量i应该作为动态变化的参数,而不是放在双引号中作为一个固定的字符串i。改成这种可以读取:$("input[name='userLoginNo']:eq("+i+")").val()。自测过。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage