用我自己的jQuery替换文本

时间:2013-08-29 15:21:46

标签: jquery html

这是由大量jQuery动态生成的输出的一部分。跨度内的文本是在我无法访问的外部脚本中生成的。我想用我自己的文字替换它。

我怎么能这样做?

    <div class="questionDiv">
        <div class="innerQuestionDiv" id="firstQuestion">
            <span class="question">
                THIS IS THE FIRST QUESTION
            </span>
        </div>
     </div>

     <div class="questionDiv">
        <div class="innerQuestionDiv" id="secondQuestion">
            <span class="question">
                THIS IS THE SECOND QUESTION
            </span>
        </div>
     </div>

也许是这样的......

     //TO REMOVE EXISTING TEXT
     $('#firstQuestion').innerhtml('');
     //AND REPLACE
     $('#firstQuestion').innerhtml('<span class="question">MY QUESTION</span>')

4 个答案:

答案 0 :(得分:4)

首先,您需要确定您正在使用的父母。在这个例子中,我选择了firstQuestion div。然后我展开选择器以定位孩子span,其姓名是&#34;问题&#34;。获得span元素后,使用jQuery的text()函数更新其内容(如果您只是使用新文本更新它):

$('#firstQuestion .question').text('your new text');

如果您要添加HTML内容,请改用html()

$('#firstQuestion .question').html('<strong>your new text</strong>');

或者,您可以像在第二个代码段中尝试一样替换div的全部内容:

$('#firstQuestion').html('<span class="question">MY QUESTION</span>');

答案 1 :(得分:3)

您只需要在ID的ID前面加上“#”符号来表示ID匹配,然后您可以使用.html() function来处理您的替换:

 //Removes the contents of your element
 $("#firstQuestion").html('');

 //Updates the contents
 $("#firstQuestion").html("NEW VALUE");

应该注意的是,您也可以使用.text() function,但如果输入的话,它不会格式化显式HTML标记。

答案 2 :(得分:0)

$('firstQuestion').innerhtml('');  //WRONG and missed # for id selectors
$('#firstQuestion').innerHTML('');  //Correct

您可以在jQuery中使用 .text() / .html()

$('#firstQuestion').html('');
$('#firstQuestion').html('MY QUESTION');

答案 3 :(得分:-1)

您的Jquery selector无效

   $('#firstQuestion').html('<span class="question">MY QUESTION</span>');

您应该使用#(代表ID)或.代表class