javascript - js Comment obtenir uniquement la valeur de l'élément parent au lieu de la valeur de l'élément enfant en même temps?
黄舟
黄舟 2017-06-26 10:50:49
0
10
736
<p class="mui-media-body js-media-body js-anviz-body">Trouble Ticket
    <p class="anviz-ellipsis js-des">You can sumbit your trouble and …</p>
</p>

Comment écrire juste pour obtenir un Trouble Ticket ? Merci

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(10)
某草草

Il est préférable d'ajouter une étiquette pour l'emballer pour un accès facile

洪涛
var val = jQuery(this).find('.js-anviz-body')[0].firstChild.data;

D'accord!

習慣沉默

Clonez d'abord l'élément, puis supprimez les éléments enfants et enfin obtenez le texte sans éléments enfants

jQuery('.js-anviz-body').clone().children().remove().end().text()
女神的闺蜜爱上我
document.querySelector('.mui-media-body').firstChild.nodeValue
我想大声告诉你

J'ai déjà répondu à une question similaire. Lors de la traversée de nodeChild, ce texte est une instance de Text() Vous pouvez vous référer à la question à laquelle j'ai répondu auparavant : /q/10...

.
过去多啦不再A梦

Il est plus raisonnable d'ajouter une travée pour le couvrir

大家讲道理
<html>
    <head>
        <title></title>
        <style type="text/css">
            .parent{
                width:100px;
                height:100px;
            }
            .child{
                width:100px;
                height:50px;
            }
        </style>
    </head>
    <body>
        <p class="parent">
            hello world,
            <p class="child">welcome!</p>
        </p>
        <script>
            var text = document.querySelector('.parent').firstChild.nodeValue;
            console.log(text);
        </script>
    </body>
</html>

曾经蜡笔没有小新

Pour comprendre la question, vous souhaitez probablement obtenir tout le texte qui appartient à l'élément parent mais n'appartient pas à l'élément enfant

  • En supposant que vous connaissez la position du texte, c'est plus simple, si le texte est au début :

//pp = """<p class="mui-media-body js-media-body js-anviz-body">Trouble Ticket
    <p class="anviz-ellipsis js-des">You can sumbit your trouble and …</p>
</p>"""
var childNodes = pp.childNodes;
var text = childNodes[0]; // Trouble Ticket
  • Si la position du texte est incertaine, voire s'il y en a plusieurs, alors il faut parcourir les éléments enfants de l'élément parent et trouver tous les éléments dont les attributs de nœud sont du texte :

//pp = """<p class="mui-media-body js-media-body js-anviz-body">
    Trouble Ticket
    <p class="anviz-ellipsis js-des">You can sumbit your trouble and …</p>
    Trouble Ticket2
</p>"""
var childNodes = pp.childNodes;
var textNodes = [];
childNodes.forEach(function(node){
    if (node.nodeType === 3) {
        textNodes.push(node);
    } // 3 为 文本
});
//textNodes === ['Trouble Ticket', 'Trouble Ticket2']
ringa_lee

La méthode de clonage ci-dessus est meilleure. Que se passe-t-il s'il y a du texte derrière la balise p ?
L'utilisation de firstChild n'obtient que le premier nœud de texte, et il doit être parcouru pour obtenir les nœuds de texte suivants.

大家讲道理
var content = $('.anviz-ellipsis').parent().html().replace(/<[\s\S]*>/g, '');
    console.log(content);
打印结果:
// Trouble Ticket

Code HTML :

    <p class="mui-media-body js-media-body js-anviz-body">Trouble Ticket 
        <p class="anviz-ellipsis js-des">
            You can sumbit your trouble and …
            <!-- 混淆代码1 start-->
            <p>sdkfjfjfdlkfjsld</p>
                <a href="">3w33333</a>
            <!-- 混淆代码1 end-->
        </p>
             <!-- 混淆代码2 start-->
            <img src="" alt="">
            <a href="">sdfsjflsjdflskdjf</a>
            <p>
            </p>
             <!-- 混淆代码2 end-->
    </p>

code js :


    <script>
        var content = $('.anviz-ellipsis').parent().html().replace(/<[\s\S]*>/g, '');
        console.log(content);
    </script>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!