【问题标题】:Pass values ​MySQL query using javascript [closed]使用javascript传递值MySQL查询[关闭]
【发布时间】:2020-08-10 09:34:32
【问题描述】:

进行查询时,我将结果显示在一个表格中,每一行都有一个按钮。通过按下它,我将所选行的信息移动到文本区域。问题是当所有的按钮都有相同的标识符时,java总是占据第一行。

https://jsfiddle.net/a50ue2bw/

function calcular() {
    $('#pedido').val($('#pedido').val() + $(this).closest('tr').find('#cantidad').val());
    $('#pedido').val($('#pedido').val() + " "+ $(this).closest('tr').find('select option:selected').attr('value'));
    $('#pedido').val($('#pedido').val() + " "+ $(this).attr('nombre')+ "\n");
    
    var newPrice = parseFloat($('body').find('#categoria option:selected').attr('precio'));
    var cantidadt = parseFloat($('body').find('#cantidad').val());
    $("#cuenta").val(parseFloat($("#cuenta").val())+parseFloat(newPrice*cantidadt)+' €');
    $("#save").val(parseFloat($("#save").val())+parseFloat(newPrice*cantidadt));
}

【问题讨论】:

  • id 属性必须是唯一的才能正常工作。它们就像数组的键

标签: javascript php html mysql


【解决方案1】:

通过 jQuery 添加您的点击事件监听器并使用 this 访问被按下的按钮。

$('.button').on('click',calcular);

function calcular() {
    $('#pedido').val($('#pedido').val() + $('#cantidad').val());
    $('#pedido').val($('#pedido').val() + " "+ $(this).closest('tr').find('select option:selected').attr('value'));
    $('#pedido').val($('#pedido').val() + " "+ $(this).attr('nombre')+ "\n");
    
    var newPrice = parseFloat($('body').find('#categoria option:selected').attr('precio'));
    var cantidadt = parseFloat($('body').find('#cantidad').val());
    $("#cuenta").val(parseFloat($("#cuenta").val())+parseFloat(newPrice*cantidadt)+' €');
    $("#save").val(parseFloat($("#save").val())+parseFloat(newPrice*cantidadt));

}

【讨论】:

  • 工作,但我对选择字段有同样的问题。
  • 查看我的编辑,不要按 ID 匹配选择标签(必须是唯一的),而是沿着 DOM 树向上查找。
  • 好的,谢谢。在数字字段中,工作,但在行中获取数字字段的值的浮点数不起作用。
  • 是的,这将留给您作为练习,它与数字字段中的相同。
  • 我无法让它工作,求助!
猜你喜欢
  • 2023-03-11
  • 2013-02-26
  • 2015-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-14
相关资源
最近更新 更多