使用jQuery动态更改文本

时间:2018-08-23 06:15:17

标签: javascript jquery asp.net-mvc-4

我有一个场景,在我的MVC应用程序中,我需要将所有带有“银行名称”文本的标签替换为“供应商名称”。 “银行名称”标签在各个页面中都有使用,因此查找和替换所有内容对于我来说很繁琐,因为将来可能再次需要用其他一些文本来更改“供应商名称”。 只是要添加,所有标签都具有不同的ID和名称。 因此,我正在考虑使用jquery来执行此操作,就像我可以找到包含“银行名称”的标签,div,td并将其替换为“供应商名称”一样。

def to_disable_flash_chrome():
    time.sleep(3)
    chrome_options = webdriver.ChromeOptions()
    prefs = {"profile.default_content_setting_values.plugins": 1,
        "profile.content_settings.plugin_whitelist.adobe-flash-player": 1,
        "profile.content_settings.exceptions.plugins.*,*.per_resource.adobe-flash-player": 1,
        "PluginsAllowedForUrls": "http://www.zombo.com/"
    }

    chrome_options.add_experimental_option("prefs", prefs)
    browser = webdriver.Chrome(chrome_options=chrome_options)
    browser.get("http://www.zombo.com/")
    time.sleep(30)

但是我担心的是,我有一些通过jquery生成的表和div,我需要上面的函数document.ready,它只会在页面加载时调用,而不是在生成动态表div时调用。 我想让此功能适用于动态元素,这些动态元素可能会在单击按钮时出现并包含“银行名称”,我无法真正去每个按钮单击js并调用特定函数来替换文本。 可以动态完成吗?谢谢

2 个答案:

答案 0 :(得分:0)

这可能对您有帮助,您可以使用setInterval方法,它将每秒触发一次并查找和替换文本       http://jsfiddle.net/2EvGF/4214/

 setInterval(function(){
        // call your function
  },1000)

 <div id="id1">
 <p>
   apple
 </p>
 <p>
   ball
 </p>
 <p>
   cat
 </p>
 <p>
   dog
 </p>
</div>

    $('#id1 p').each(function() {
        var text = $(this).text();
        $(this).text(text.replace('dog', 'doll')); 
    });

答案 1 :(得分:-1)

希望这对您有所帮助。通过使用包含,您可以搜索文本并将其替换。

$('div:contains(“ test”)')。text(“新单词”);

如果您需要更多详细信息,请告诉我。

更多信息: https://www.w3schools.com/jquery/sel_contains.asp

相关问题