javascript - 函数、表单和用户输入的数据

标签 javascript

我有点迷失在这里。我拥有的是一个包含项目和价格的基本菜单,设置为表单中的表格。我有一个文本输入框,供用户输入一个值 - 想要的该项目的数量。

我想知道在用户单击计算按钮后如何使用输入文本框中输入的数据,以便我可以验证它并在方程式中使用它。如果用户想要该项目的“2”,我需要将该值带入我的函数中,以便我可以将其验证为数值。然后,我将使用它作为整数,将其乘以与该商品相关的价格...

这是我的代码示例:

        function calculate(){
        var error = false; 
        if (isNaN(*"what would I put here??"*){
            alert("A numeric value is required when ordering steak");
            error = true;
        }
        else{
            var numbercrabcakes = parseInt(-------);
        }
        if (!error)
        {
            total = numbercrabcakes * 15 * 1.0825;
            window.alert("Your order totals: " + total.toFixed(2))
        }
    } 


.........


<form name="myform">
 <script type="text/javascript">
 /* <![CDATA[ */
   document.write("<table border = '1'>")
   document.write("<tr><th>Item Picture</th><th>Item Description</th><th>Item Price</th> \
        <th>Quanity</tr>");
   document.write("<tr><td><img src = 'images/crabcakes.png'></td><td>Cirtus infused crab \                      
   cakes with a sweet and savory sauce</td><td>$" + price[0] + "</td> \
   <td><input type='text' id='crabcakes' size='10' value='0' style='text-align:right;' /></td>
   </tr>");
  /* ]]> */
  </script>
  <p id="submit_button"><input type="submit" value="Calculate" onclick="calculate()" \
       style="width:150px;height:30px;text-align:center;font-weight:bold;" /></p>
</form>

代码的功能部分作为示例/指南给出,供我们的特定页面使用和编辑。我是否需要为输入框提供 idname 并使用 getElementbyId 以便我可以根据 isNaN 检查它> 然后使用 parseInt 将其转换为函数所示。我确实尝试过,但它似乎对我不起作用。

最佳答案

如果您只想访问 ID 为“crabcakes”的文本框的值,您可以这样做:

function calculate(){
        var value = document.getElementById("crabcakes").value;
        var error = false; 
        if (isNaN(value)){
            alert("A numeric value is required when ordering steak");
            error = true;
        }
        else{
            var numbercrabcakes = parseInt(value);
        }
        if (!error)
        {
            total = numbercrabcakes * 15 * 1.0825;
            window.alert("Your order totals: " + total.toFixed(2))
        }
    } 

关于javascript - 函数、表单和用户输入的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27374352/

相关文章:

javascript - 如果单击任何链接,如何使用 jQuery 触发函数?

javascript - 调整窗口宽度时隐藏菜单

javascript - NodeJS 中奇怪的 express.use() 行为

javascript - 如何将 jquery 对象呈现为 html - 参见 [object Object]

javascript - 按类名计算元素未按预期工作

javascript - Codeigniter Javascript 动态输入仅提交第一项

javascript - 如何在浏览器中使用纯 html 和 javascript 的 IPFS

没有 worker 的 JavaScript 长循环

javascript - 是否可以确定是否从原型(prototype)方法中调用了实例方法?

javascript - 从列表中返回对象的更简洁的方法