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

问题描述 投票:1回答:1

我试图更新一个函数内部的全局对象的值,然后用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然后从任何地方读取其值吗?

如果没有,我该怎么办?

javascript jquery
1个回答
0
投票

正如@ASDFGerte在评论中指出的,问题出在我的按钮被单击时刷新了页面。

我通过将其类型从type =“ submit”更改为type =“ button”来解决。

任何有兴趣的人都可以检查我的完整代码here

© www.soinside.com 2019 - 2024. All rights reserved.