javascript - 使用函数生成dom选择器

标签 javascript

我尝试在底部使用新的 roomTotal 函数生成前 3 个变量,方法是将“lounge”放入“idt”参数中。我想在具有不同 ID 的其他表中使用相同的代码。但它不起作用,我不明白为什么。请帮忙。

    var Vol = document.querySelectorAll("#lounge .vol input");
    var Qty = document.querySelectorAll("#lounge .qty input");
    var t = document.querySelectorAll("#lounge .total input");



function roomTotal(idt) {
    var w = "\"#" + idt;
    var Vol = document.querySelectorAll(w + " .vol input\"");
    var Qty = document.querySelectorAll(w + " .qty input\"");
    var T = document.querySelectorAll(w + " .total input\"");
    }

html 片段

<table id="lounge">
    <tr>
    <td class="item">Upright Piano</td>
    <td class="vol">
        <input type="number" value="0" placeholder="0">
    </td>
    <td class="qty">
        <input type="number" value="0" placeholder="0">
    </td>
    <td class="total">
        <input type="number" name="" value="60" placeholder="60">
    </td>
</tr>
<tr>
    <td class="item">Upright Piano</td>
    <td class="vol">
        <input type="number" value="0" placeholder="0">
    </td>
    <td class="qty">
        <input type="number" value="0" placeholder="0">
    </td>
    <td class="total">
        <input type="number" name="" value="40" placeholder="40">
    </td>
</tr>
</table>

最佳答案

\" <--- 这就是为什么......

假设 w#lounge ...

你的代码

var Vol = document.querySelectorAll(w + ".vol input\"");

正在评估:

var Vol = document.querySelectorAll('#lounge .vol input"');

您需要删除转义的双引号。

在你的情况下应该是:

function roomTotal(idt) {
    var w = "#" + idt;
    var Vol = document.querySelectorAll(w + " .vol input");
    var Qty = document.querySelectorAll(w + " .qty input");
    var T = document.querySelectorAll(w + " .total input");
    }

关于javascript - 使用函数生成dom选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46857324/

相关文章:

javascript - Angular2 cli (Webpack) 为不同模块创建 block

javascript - 当我需要运行服务器端代码时,如何响应按钮的点击(不提交页面)?

Javascript 设置 window.name - IE 中的问题

javascript - 我无法让 onChange 触发 dijit.form.Select

javascript - 从 javascript 获取 IE 11 内部版本号

javascript - 检查文本是否在字符串中

javascript - 如何确保在调整窗口大小时 div 不会开始新行?

javascript - react map 不渲染

javascript - 在 ERB 中调用带参数的 ruby​​ 方法?

javascript - '+new Date' 中的加号有什么作用