【问题标题】:Replace a String with a text用文本替换字符串
【发布时间】:2015-11-04 14:55:43
【问题描述】:

什么函数可以用另一个文本替换一个字符串,意思是 从.content获取文本。
像这样<div class="content">text</div> 然后放在这里:username : 'text'

示例#

HTML:<div class="content">text</div>

.content文本放到用户名

$(document).ready(function() {
$('#tweecool').tweecool({
 //settings
 username : 'I wan to Replace here', 
 limit : 5  
 });
});

替换后应该是这样的:

$(document).ready(function() {
$('#tweecool').tweecool({
 //settings
 username : 'text', 
 limit : 5  
 });
});

那么如何通过 jquery/JS 将字符串替换为来自特定 DIV 的文本。
谢谢!

【问题讨论】:

  • 使用html()jquery方法
  • @JohnR 谢谢 :),但是如何?
  • 现在检查我的答案。

标签: javascript jquery html string replace


【解决方案1】:

您可以使用 .text() 阅读文本内容并在设置中使用它

$(document).ready(function() {
  $('#tweecool').tweecool({
    //settings
    username: $('.content').text(),
    limit: 5
  });
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="http://api.tweecool.com/js/tweecool.min.js"></script>
<div class="content">text</div>
<div id="tweecool"></div>

【讨论】:

  • 哇,谢谢,但在我的网站&lt;div class="content"&gt;text&lt;/div&gt; 是在页面加载时动态加载的,因此脚本无法从 HTML 源获取文本,在这种情况下您的脚本无法正常工作,那么如何修复这个?
  • @Aabira 那么你需要在更新 div 内容后调用它
  • 是的,我已经通过 setTimeout(function() { 尝试过,但没有工作 :(
  • @Aabira 使用超时无济于事...您需要在加载内容后执行此操作
  • 好的,非常感谢:)
【解决方案2】:

你可以尝试使用文本方法

​$("#tweecool").text(function () {
    return $(this).text().replace("text", "hello world"); 
});​​​​​

【讨论】:

  • 嗨,我想做这样的事情:jsfiddle.net/9w4hw184/2 #但在我的网站中,&lt;div class="content"&gt;text&lt;/div&gt; 在页面加载时是动态加载的,所以脚本无法从 HTML 源获取文本,如何解决这个问题?
  • 我不明白你的意思吗?你告诉我,在这个 feedle 中一切正常,但在你的网站上却不起作用?
  • 是的,因为&lt;div class="content"&gt;text&lt;/div&gt; 是在页面加载时动态加载的,因此脚本无法从 HTML 源中获取文本。
  • 不如推迟脚本,让他等待 div 被加载。
  • 是的,我已经通过 setTimeout(function() { 尝试过,但没有工作 :(
【解决方案3】:

用于简单的更改内容。你可以这样试试。

$('div.content').html("username : 'text'");

但是对于你的 jQuery 控件类结构,你可以像这样使用它的对象来自定义它。

var tObj = $("#tweecool").data("tweecool");
tObj.username = "text";

【讨论】:

  • 谢谢,不是要替换 HTML 文本,而是要替换示例 Jqury 字符串。
  • @Aabira 像上面的代码 sn-p 一样,为您的控件创建一个对象。通过该对象,您可以访问 jQuery 控件的所有属性。
  • 嗨,我想做这样的事情:jsfiddle.net/9w4hw184/2 #但在我的网站中,&lt;div class="content"&gt;text&lt;/div&gt; 是在页面加载后动态加载的,因此脚本无法从 HTML 源获取文本,如何解决这个问题?
【解决方案4】:

请试试这个:

样式表:

<style type="text/css">
#overlay{
    display:none;
    background:red;
    width:200px;
    color:white;
    text-align:center;
    padding:10px;
    border-radius:5px;
}
#overlay1{
    display:none;
    background:red;
    color:white;
    width:200px;
    text-align:center;
    padding:10px;
    border-radius:5px;
    }
    </style>

jquery函数:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js"></script>




<script type="text/javascript">
        $(document).ready(function(){
        $('#overlay').fadeIn('fast').delay(1000).fadeOut('fast');
        });
        $(document).ready(function(){
        $('#overlay1').fadeOut('fast').delay(2000).fadeIn('fast');
        });
        </script

身体

<div id ="overlay">hi</div>
<div id ="overlay1">hello</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-18
    • 2015-05-19
    • 2012-03-24
    • 2018-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多