我需要替换此输入字段中的占位符

I need to replace the placeholder in this input field

我正在尝试将显示 'Search for...' 的占位符替换为其他内容。问题是——输入有一段时间没有加载,我不知道如何检测输入何时加载。这是页面 link,您可以看到它的加载方式 https://asahouston.org/membership/member-directory/

这是我试过的方法,但它似乎没有检测到输入字段。

<script type="text/javascript">
    document.addEventListener("load", function(){
        document.getElementsByClassName(".SFfndtag input[type=text]").placeholder = "Search for Company Name...";
    }
</script>

我尝试了一些其他的东西,但我的 javascript 技能不足。如果您能提供任何帮助,我将不胜感激。谢谢!

尝试改变

document.addEvenlistener('load'...

window.adEventListener('load'...

window.onload

默认情况下,它在整个页面加载时触发,包括其内容(图像、css、脚本等)。在某些浏览器中,它现在接管了 document.onload 和当 DOM 也准备就绪时触发。

document.onload

当 DOM 准备就绪时调用,可以在加载图像和其他外部内容之前调用。

--- 编辑 ---

绝对不是最优雅的,但这应该可以解决问题。

var changePlaceholderInterval = setInterval(function () {changePlaceholder()}, 100);

function changePlaceholder() {
    if(document.querySelector('.SFfndtag input')){
        document.querySelector('.SFfndtag input').placeholder = "Search for Company Name...";
        window.clearInterval(changePlaceholderInterval);
    }
}

为 JQuery 使用 attr 或为 Javascript 使用 setAttribute:

JQuery

 $('.SFfndtag').attr("placeholder", "Search for Company Name...");

Javascript

document.getElementsByClassName("SFfndtag").setAttribute("placeholder","Search for Company Name..."); 

希望对你有所帮助。