gpt4 book ai didi

javascript - 如何读取具有动态 ID 的文本框的文本框值?

转载 作者:行者123 更新时间:2023-11-28 18:55:57 24 4
gpt4 key购买 nike

我有 2 个输入,如下所示。其中 1 个是按钮,另一个是文本框。qty-input 用于输入产品数量,当我使用 jquery 单击按钮时。我更新了我的购物车。当我将其硬编码为 1 时它可以工作,但我不知道如何通过从文本框中读取而不进行回发来做到这一点。

下面的代码属于局部 View 中的 1 个产品,它显示在列表中,我需要为每个创建的文本框分配 id,因此,该文本框应该属于按钮。

当我简单地使用 var amount = $('.qty-input').val(); 时,它仅适用于第一个生成的文本框。这意味着如果我想将第二个产品添加到购物车中,它会因为它具有相同的类别而感到困惑。因此我必须与 Id 合作。另一个想法可以使用 angular.js,我看到了一些例子,它看起来很容易实现,但我不知道如何做到这一点?

jquery 或 angular.js,我需要你的帮助。谢谢。

在我的局部 View 中

     var quantity = 1;
string addtocartlink = "";
addtocartlink = Url.RouteUrl("AddProductToCart-Catalog", new { productId = Model.Id, shoppingCartTypeId = shoppingCartTypeId, quantity = quantity });

<div class="cart-input">
<input class="qty-input" id="@Model.Id" data-val="true" type="text" value="1">
<input type="button" value="@(addToCartClass)" class="button-2 product-box-add-to-cart-button @addToCartClass" onclick="AjaxCart.addproducttocart_catalog('@addtocartlink');return false;" />
</div>

我的 JavaScript

  addproducttocart_catalog: function (urladd,id) {
if (this.loadWaiting != false) {
return;
}
this.setLoadWaiting(true);
var quantity = $(id).val();
urladd = urladd.substring(0, urladd.length - 1) + quantity;

$.ajax({
cache: false,
url: urladd,
type: 'post',
success: this.success_process,
complete: this.resetLoadWaiting,
error: this.ajaxFailure
});
},

最佳答案

有两种方法可以实现它。

a.要获取 id ,您只需在 javascript 中声明一个变量即可:

var id = '@Model.Id';

b.您可以为输入元素分配一个属性。

<input class="qty-input" id="@Model.Id" data-val="true" type="text"    unique-id="qty" value="1">

var id = $("input[unique-id='qty']").attr("id");

关于javascript - 如何读取具有动态 ID 的文本框的文本框值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33636601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com