当前位置: 首页 > 知识库问答 >
问题:

为什么val()函数不能用于后来呈现的HTML?

燕宏胜
2023-03-14

因此,我用javascript呈现了一个add minus按钮,因为我需要数据库中的数据,如果我不用javascript呈现它,它可以工作,但它不工作。

HTML:

<div id="cart">
  <div class="row">

  </div>  
</div>

JS(渲染):

var output = [];
var food_template = [];
//res is the data got from database
for(var f in res) {
  id = res[f]["id"];
  name = res[f]["name"];
  description = res[f]["description"];
  price = res[f]["price"];
  food_template = [
    '<div class="col-6">',
    '    <div class="single_food_item media">',
    '        <div class="media-body", style="margin-right:10px; margin-top: 20px; height: 200px">',
    `            <h3>${name}</h3>`,
    `            <p>${description}</p>`,
    `            <h5>$${price}</h5>`,
    //add minus button starts
    '            <div class="input-group" style="width:50%">',
    '                <span class="input-group-btn">',
    '                    <button class="btn btn-danger btn-minus" type="button">-</button>',
    '                </span>',
    '                <input type="text" class="form-control no-padding add-color text-center height-25" maxlength="3" value="0">',
    '                <span class="input-group-btn">',
    '                    <button class="btn btn-success btn-plus" type="button">+</button>',
    '                </span>',
    '            </div>',
    //add minus button ends
    '        </div>',
    '    </div>',
    '</div>'
  ];
  output.push(food_template.join("\n"));
}
("#cart .row").html(output.join("\n"));

JS(加减按钮):

$('#cart .row').delegate('.btn-minus', 'click', function(){
  $(this).parent().siblings('input').val(parseInt($(this).parent().siblings('input').val()) - 1);
});

$('#cart .row').delegate('.btn-minus', 'click', function(){
  $(this).parent().siblings('input').val(parseInt($(this).parent().siblings('input').val()) + 1)
});

(调用所有函数)

我的测试使我认为问题可能是val()函数没有改变输入HTML的值,因为如果我使用console.log来显示它,它可以工作,但它不会在web上更新

共有1个答案

暨鹭洋
2023-03-14

我认为您有加号和减号事件处理程序附加在减号按钮上,所以当您单击它时,加号处理程序增加值,减号处理程序减少值,因此您没有看到关于输入值的变化

 类似资料:
  • 这个问题不仅仅是让这个词有意义,还提醒造词者告诉我们他们为什么给这个词起名字,这可不是一件小事,这会让我们更舒服地学习新知识,我们想学什么就学什么。 例如,许多人想知道为什么Swift使用这个词,或者为什么Objective-C使用文件扩展名? 我认为官方的文件或回应是非常重要的,任何猜测或假设都没有帮助,因为它没有说服力,迷惑的人还是迷惑的人。 我在官方论坛上也问过这个问题: https://d

  • 使用scandir()函数时,我收到以下php警告: Scandir无法打开目录:公共html/page2中不允许操作。php在线3 第2页。php 我想使用这个功能来打印我的根文件夹的文件和子目录,但它不工作。 有人知道怎么修吗?

  • 为什么我不能在Java中做到这一点: 不会是子类。add已经实现Context。add,因为它add(Object)可以执行add(Integer)可以执行的所有操作? 解决这个问题的好方法是什么? 现在我正在做一种丑陋的方式: 编辑:这不是上述问题的副本。在给定的问题中,超类是以更一般的“Object”作为参数的类,而子类则更具体。这不起作用,因为更具体的方法可能无法处理任何对象。在我的问题中,

  • 我在Java的JTable中使用changeSelection(int row,int column,boolean toggle,boolean extended)。我这样做了,当表中有一个复选框列并且该列被单击时,就会发送一个事件来显示现在该行已被选中/取消选中--当用户执行该操作时,这一切都很好。但当它以编程方式完成时,事件被激发,但JTable没有刷新呈现器,难道我应该添加其他东西。它应该

  • 我试着读过类似的问题,但没有成功。

  • 预计此函数将无法typeCheck。然而,没有解释发生这种情况的原因。在GHCI中试用时,我得到了以下输出: 为什么会出现这种情况?