我有以下 H2:
<h2 id="resetPWSuccess">Password reset instructions have been sent to *|RESETPASSWORDEMAIL|*</h2>
我想用我在 jQuery 变量 emailAddress
中的当前电子邮件地址替换 *|RESETPASSWORDEMAIL|*
。
我已经尝试了以下但它不起作用:
$('h2#resetPWSuccess').text().replace('*|RESETPASSWORDEMAIL|*', emailAddress).show();
有没有办法更新 h2 文本 - 如果可能的话,我更喜欢一行。
最佳答案
改用这个:
$('#resetPWSuccess').text(
$('#resetPWSuccess').text().replace('*|RESETPASSWORDEMAIL|*', emailAddress)
).show();
请注意,我还从您的选择器中删除了 h2
:它没有用,而且比仅使用 id 更慢。当您要求 jQuery 搜索 #resetPWSuccess
时,它会使用非常快速的 native getElementById
函数。
来自 jQuery 的源代码:
// Shortcuts
if ( (match = rquickExpr.exec( selector )) ) {
// Speed-up: Sizzle("#ID")
if ( (m = match[1]) ) {
if ( nodeType === 9 ) {
elem = context.getElementById( m );
关于带有 replace() 的 jQuery text() 不会替换文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17039262/