我有一个问题,我一直在研究一些 jquery 来将数量文本框设置为显示 25 或更多。它检查措辞个性化是否有一个空字符串,如果它没有应用 25 数量作为其明显的套件产品和个性化。
套件产品的关键部分是:
if (parseInt($("#kitProduct #Quantity").val()) < 25) {
$("#kitProduct #Quantity").attr("value", "25");
它知道它是一个套件产品,因为我在名为 Kit Product 的页面周围有一个 div.id。
我的问题是我需要为某些产品覆盖此套件产品代码。我认为快速解决此问题的最佳方法是检查 div 的内容,例如:
<div class="ProductNameText">Exclusive Handmade Box</div>
如果找到独家手工盒,则允许用户在文本框中输入 1 或更多的数量。
我尝试了以下代码:
quantity = $('div.ProductNameText').text().match(/Exclusive Handmade Box/g).length;
if(quantity)
{
$("#kitProduct #Quantity").attr("value", quantity);
$("#kitProduct #Quantity").keypress(function(){
var quantity = parseInt($.trim($(this).val()));
if( quantity < 1) {
$(this).val('1');
} else {
$(this).val(quantity);
}
但这只会迫使 1. 我现在真的迷路了,我已经尽我所能解释了,下面是 jsfiddle 中页面的缩减示例。
真的希望你能帮忙吗?
更多信息:
在大多数情况下,套件产品是在一个 xml 包中定义的,该包应用于管理部分中的套件产品。然而,我有一些产品仍然是产品,但不需要 25 加入数量。
目前 jquery 检查文本区域框,因为如果用户在其中添加个性化设置,则意味着他们想要套件产品,因此最小数量为 25。
但是我有一个产品我想根据它的 div 内容进行检查,我想拥有 1 个或更多...
所以我应该能够在框中输入 1-25,而我当前的代码不会说 oppps 你输入的数字小于 24,所以我要把它改回最小套件产品数量。
如果您尝试使用 jsfiddle,您会发现它不会让您输入 3 的值?那就是问题所在。