如何显示和存储按钮值?

时间:2015-06-15 21:43:39

标签: javascript jquery html

这里编码非常新,为基本问题道歉。试图完成odin项目的构建计算器挑战(http://www.theodinproject.com/javascript-and-jquery/on-screen-calculator

并且在点击之后努力使数字出现。另外,如何将值存储在变量或数组中,以便稍后在计算中使用?

这是我的JS的摘录:

$(".numbers").on("click", function() {

$+(this).text()

    ;});

我的HTML(请注意我使用jsfiddle,因此缺少html开关标签等:

 <script src="jquery-1.11.3.min.js"></script>

 <div class="numbers">
 <button type="button">0</button>

<button type="button">1</button>

<button type="button">2</button>

<button type="button">3</button>

<button type="button">4</button>

<button type="button">5</button>

<button type="button">6</button>

<button type="button">7</button>

<button type="button">8</button>

<button type="button">9</button>

 </div>

 <div class = "operators">
 <button type="button">+</button>
 <button type="button">-</button>
 <button type="button">*</button>
 <button type="button">/</button>
 <button type="button">=</button>
 <button type="button">clear</button>
 </div>

3 个答案:

答案 0 :(得分:1)

要将按钮的值存储在变量中,您可以执行此操作。

$('button').on('click', function(){
    var i = $(this).text();
    console.log(i); // print the value of i in the console
});

一旦掌握了价值,您就需要在计算器的“显示”上按顺序点击每个按钮的值。

HTML

<div class="display"></div>

的JavaScript

$('button').on('click', function(){
    var i = $(this).text();
    var display = $('.display');

    display.text( display.text() + i );
});

希望这有助于指明你正确的方向。

答案 1 :(得分:0)

我不确定您希望如何显示您的号码。你在使用TextArea吗?

对于存储值,在函数内部执行类似

的操作

var num = $ +(this).text()

除此之外,你需要更加具体。

答案 2 :(得分:0)

以下jsfiddle演示了如何做你想做的事。

// array is defined outside the click handler
var clickedArray = [];

$('button').on('click',function() {
    // get the button that was clicked
    var buttonClicked = $(this).html();
    console.log(buttonClicked);

    // store it as the last element in the array
    clickedArray.push(buttonClicked);
    console.log(clickedArray);

    // and output it to the screen
    $('.js-calc-out').append(buttonClicked);
});

注意事项:

  1. 数组是在click事件处理程序之外定义的,因此每次触发click事件时都可以使用它而不会重置。此数组将一直存在,直到刷新页面或故意取消设置,您可以根据需要访问它。
  2. html()函数检索任何给定HTML元素的内容,在这种情况下,它是单击的按钮,使用$(this)检索(触发事件的任何元素都使用{{1}检索然后使用this函数将其转换为jquery对象。
  3. $()函数用于将最新点击的元素附加到第1点中提到的数组的末尾。
  4. push()是我们.js-calc-out最新点击的HTML元素,表示输出点击次序。
  5. append()声明将一些内容输出到检查器中,这可以帮助您看到流程的开发。
  6. PS。这是一个简化的解决方案,考虑到您在学习曲线上的当前位置;理想情况下,您希望使用对象在javascript中封装数据和功能,并远离全局命名空间。