javascript - 无法使用 jquery 从表 div 内的文本框中获取值
问题描述
我想获得我分配了class =“qty-text”的文本框值。它可以是多个文本框,但为了简单起见,我在这里只使用了一个。尝试下面的代码,但它返回未定义的值。请帮忙解决这个问题。
$(document).on('click','.qButton',function(e){
var id="a318d5";
var get_value = $('#a318d5').closest("div.quantity").find("input[class='qty-text']").val();
alert(get_value);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<table>
<tr>
<td class="action"><a href="#" id="a318d5" class="remove_cart"><i class="fa fa-times" aria-hidden="true"></i></a></td>
<td class="cart_product_img">
<a href="#">Image</a>
</td>
<td class="cart_product_desc">
<h5>Product</h5>
</td>
<td>
<span> M </span>
</td>
<td class="price"><span>$320</span></td>
<td class="qty">
<div class="quantity">
<input type="number" class="qty-text" step="1" min="1" max="1" name="quantity" value=3>
</div>
<i class="fa fa-caret-down downarr"></i>
</td>
<td class="total_price"><span>960</span></td>
</tr>
</table>
<button class="col-xs-12 qButton">select</button>
解决方案
您的代码中的 DOM 层次结构存在问题。是在当前的input.qty-text
另一个内部的某个地方(我们甚至不能确切地知道,下一个与否)。所以,试试这个:td
tr
td
$(document).on('click', '.qButton', function(e) {
var id="a318d5";
var get_value = $('#' + id).closest("tr").find("input.qty-text").val();
alert(get_value);
});
推荐阅读
- sharepoint-online - Sharepoint Online - 如何在 Web 部件中获取内容类型列名称
- microsoft-teams - Teams 机器人:在刷新聊天之前未正确显示带有卡片的更新消息
- apache - 通过 Referrer、Agent 或 Page 使用 htaccess 阻止 BotNet
- time-complexity - 如何从 Leetcode 中理解快乐数问题解决方案的时间复杂度
- python - VS Code 中的 Popen('python') 使调试器崩溃
- parsing - 解析错误:语法错误,文件意外结束请帮助我找出错误是什么?
- node.js - 无法使用 axios 和 Express Session 获取会话 cookie。但能够与邮递员
- r - 如何增加 ggplot2 数字分辨率
- python - 如何将熊猫数据框传递给请求参数
- java - 转换列表