如何改变一个img与文本在innerHTML

How to change an img with text in innerHTML

本文关键字:img innerHTML 一个 文本 何改变 改变      更新时间:2023-09-26

这只是代码的一部分:

<div id="login">
    <form id="form" method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>">
        <h1 id="heade">Register!</h1>
        <input type="text" id="username" name="username" placeholder="username (6-55char)" class="reqi">
        <input type="password" id="password" name="password" placeholder="password (6-55char)" class="reqi">
        <input type="password" id="passwordconfirmation" name="passwordconfirmation" placeholder="confirm password" class="reqi">
        <input type="text" id="email" name="email" placeholder="e-mail adress" class="reqi">
        <p id="req">Enter the Captcha code:</p>
        <h1 id="captcha"><img src="http://i.imgur.com/QgoRq4h.gif" alt="loading"></h1>
        <input type="text" id="code" name="code"><br>
        <div id="buttons">
            <input type="submit" id="submit">
            <button type="button" onclick="login()">Back to Log In</button>
        </div>
        <p><?php echo $txt; ?></p>
    </form>
</div>
<script>
    var captcha =<?php echo $_SESSION['final']; ?>;
    setTimeout(function () {
        document.getElementById("captcha").innerHTML = captcha;
    }, 3000);
    function login() {
        window.location = "main.php";
    }
</script>

等待3秒后,页面不改变图像从h1 ' id="captcha"与变量captcha,顺便说一下不是空的(我检查过)。我需要一个解决方案在javascript,因为我不知道jQuery还。提前感谢!

这不是完整的代码片段。$_SESSION['final']里面有什么?你可能会在控制台遇到javascript错误。

那一行:

var captcha=<?php echo $_SESSION['final']; ?>;

产生语法错误,如:

var captcha=XXXX;

尝试更改为:

var captcha="<?php echo $_SESSION['final']; ?>";
setTimeout(function() {
    var e = document.getElementsById('captcha');
    var d = document.createElement('span');
    d.textContent = captcha;
    e.appendChild(d);
    e.removeChild(e);
}, 3000);