javascript - JavaScript 的一些问题

标签 javascript function

我在尝试使此代码正常工作时遇到了一些问题。

JavaScript 部分:

var name = document.getElementById("name").value ;
var msg  = document.getElementById("msg").value ;
var date = new Date();

function post() {
    if (name === "")  {
        alert("You are missing something :)");
        document.getElementById("name").focus();
    }
    else if (msg === "") {
        alert("You are missing something :)");
        document.getElementById("msg").focus();
    }
    else {
        document.getElementById("content").innerHTML += ("<p id='post'>Name :. " + name + "</p><br><p id='post'>Comment :. " + msg + "</p><br><p>" + date + "</p>");
        alert("Successfully posted :)");
    }
}

以及 body 部分:

<div id="content">
    <h1>:. Welcome to the discussion .:</h1>
    <br><br>
    <p>The topic is : The structure of this website.</p>
    <br>
    Name/Nickname :.<br><input type="text" value="" id="name" maxlenght="32">
    <br>
    <p>
        Message :.<br><textarea id="msg" cols="40" rows="5"></textarea>
    <p>
    <input type="button" value="Post" onClick="javascript:post()">
</div>

当我按下“发布”按钮时,我遇到了一些问题,即使“名称”和“消息”输入上有或没有字母,它也会显示警报。我看不到“其他”部分是否有效,因为我什至无法通过第一部分 :c 。我尝试了一切,但没有成功,希望有人能给我启发。

最佳答案

此部分仅运行一次:

var name = document.getElementById("name").value ;
var msg  = document.getElementById("msg").value ;
var date = new Date();

如果您想在调用 post 时重新检查 name 值,则应该在 post 函数中将 name 重新分配给 document.getElementById("name").value

关于javascript - JavaScript 的一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33850245/

相关文章:

javascript - jquery 数据表插件和动态对象名称

php - WordPress php函数没有返回值

php - 为什么我们应该总是从函数返回值?

c - 读取两个整数并找出第一个整数的所有小于第二个整数的正倍数

javascript - Angularjs ng-click 重复表行不起作用

Javascript 命名空间 + onchange = 不可能?

javascript - 正则表达式需要将名称大写,其余部分小写,并正确处理像 McDonald 这样的名称

function - Node-red - 需要一个数字值的多输入函数

php - 在 PHP 中检索当前函数的名称

javascript - 在 vue.js 中动态添加元素