如何在函数内更新全局对象的值,然后使用 JS 中的另一个函数访问其值?

我试图更新一个函数内部的全局对象的值,然后用JS中的另一个函数访问它,但没有成功,我的代码如下:


var doguinho = {

    nome : "",

    idade : "",

    raca : "",

    coloracao : ""

};


$(document).ready(() => {


    $('button[name="btn-enviar"]').click(() => {

        doguinho.nome = $('input[id="input-nome"]').val();

        doguinho.idade = $('input[id="input-idade"]').val();

        doguinho.raca = $('input[id="input-raca"]').val();

        doguinho.coloracao = $('input[id="input-coloracao"]').val();

    })


    $('button[name="btn-mostrar"]').click(() => {

        alert(doguinho.nome);

    })

}

);

<!DOCTYPE html>

<html>

<body>

  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

  <input type="text" id="input-nome"></input>

  <br/>

  <input type="text" id="input-idade"></input>

  <br/>

  <input type="text" id="input-raca"></input>

  <br/>

  <input type="text" id="input-coloracao"></input>

  <br/>

  <button type="submit" name="btn-enviar">save</button>

  <button type="submit" name="btn-mostrar">alert</button>

</body>

</html>


由于对象是在全局上下文中声明的,所以我不应该能够更新 ant 然后从任何地方读取它的值吗?


如果没有,我该怎么做?


繁星淼淼
浏览 170回答 1
1回答

喵喵时光机

正如@ASDFGerte在评论中指出的那样,问题在于我的按钮在单击时刷新页面。我通过将其类型从 type="submit" 更改为 type="button" 来解决它。任何感兴趣的人都可以在这里查看我的完整代码。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript