javascript - Pourquoi le sélecteur d'ID de jqeury avec concaténation de chaînes ne peut-il pas être utilisé?
phpcn_u1582
phpcn_u1582 2017-06-30 09:59:52
0
6
952
for(var i = 0; i < checkeds.length; i++){
    var check = 'user'+checkeds[i]+'--mycheckbox';
    $("#"+check).parent('td').siblings('.text-status').removeClass('text-green');
    console.log($("#"+check).parent('td'));
}

Dans ce code, checks est un tableau d'identifiants. La troisième ligne consiste à rechercher les éléments avec le style .text-status dans les éléments frères du parent de cet élément id et à supprimer le style text-green.
Mais cela ne fonctionne pas. Voici le contenu de l'élément parent td signalé par la console ;

[prevObject: n.fn.init, context: document]
context
:
document
length
:
0
prevObject
:
n.fn.init
__proto__
:
Object(0)

C'est la relation hiérarchique du HTML

<tr>
                                <td>
                                    <input id="user1-mycheckbox" name="user-contorl" data-color="yellow" type="checkbox" class="checkbix" data-text="">
                                </td>
                                <td>0001</td>
                                <td><img src="images/user.png" alt=""></td>
                                <td>耿直BOY</td>
                                <td>男</td>
                                <td>1990-02-01</td>
                                <td class="table-text">曾经获得迪尼斯全球最能吃奖曾经获得迪尼斯全球最能吃奖</td>
                                <td>北京</td>
                                <td>2399</td>
                                <td>123</td>
                                <td>github</td>
                                <td>******</td>
                                <td>18511009922</td>
                                <td>1991-02-01</td>
                                <td class="text-blue">23</td>
                                <td class="text-blue">23</td>
                                <td class="text-blue">23</td>
                                <td class="text-green">正常</td>
                                <td><a href="" class="user-edit"><i class="fa fa-edit"></i></a></td>
                            </tr>
phpcn_u1582
phpcn_u1582

répondre à tous(6)
学习ing

Ouvrez simplement la démo la plus simple et essayez-la, vous saurez, elle peut être épissée,

Je peux seulement dire où est le problème avec le code sur votre page


Regardez l'identifiant dans le code HTML sous la forme user1-mycheckbox

En regardant votre épissage, c'est 'user'+checkeds[i]+'--mycheckbox';

L'un est un tiret, l'autre est un double tiret, ou le code affiché est-il erroné ?

伊谢尔伦

La personne qui pose la question peut juger si le sélecteur est normal

var check = 'user'+checkeds[i]+'--mycheckbox';

// check = user1--mycheckbox

<input id="user1-mycheckbox" .....
迷茫
如果实例是你发的html的话,
1.页面中并没有td.text-status
2.check拼接的时候多了一个短横线
    id="user1-mycheckbox"    //html中
    var check = 'user'+checkeds[i]+'--mycheckbox';    // check= user1--mycheckbox
漂亮男人

Il peut être utilisé S'il ne peut pas être utilisé, c'est peut-être uniquement parce que l'identifiant n'existe pas sur votre page

phpcn_u1582

La personne qui pose la question peut-elle m'envoyer le code du test ? Cette situation signifie généralement que vous n'avez pas trouvé le bon niveau

过去多啦不再A梦

Vérifiez le résultat pour voir si c'est le résultat souhaité. Si c'est le cas, vérifiez à nouveau si l'identifiant existe sur la page. L'élément avec cet identifiant doit également exister sur la page au début et ne peut pas être un élément futur ! Les éléments futurs doivent utiliser la délégation d'événements.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal