У меня есть список продуктов, в которых они имеют минимальные количества в скрытом вводе.Некоторые продукты имеют несколько цветов, хотя минимальное количество одинаково, и я пытаюсь реализовать проверку jQuery на то, что сделанные записи, по крайней мере, равны минимуму.
Пустые или '0' записи в порядке, но если они ниже минимального количества, их следует установить на минимум.
HTML:
<div class="ProductGrouping"> <!-- with colours -->
<input id='frmQuickAdd1234c1' name='frmQuickAdd1234c1' type='text' style='width: 40px; text-align: center;' class='auto {mDec: 0}' value='' /> Black
<input id='frmQuickAdd1234c2' name='frmQuickAdd1234c2' type='text' style='width: 40px; text-align: center;' class='auto {mDec: 0}' value='' /> White
<input id="QuickAddMinOrderQty1234" name="QuickAddMinOrderQty1234" type="hidden" class="auto {mDec: 0}" value="6" />
</div>
<div class="ProductGrouping"> <!-- without colours -->
<input id='frmQuickAdd4567' name='frmQuickAdd4567' type='text' style='width: 40px; text-align: center;' class='auto {mDec: 0}' value='' /> Product B
<input id="QuickAddMinOrderQty4567" name="QuickAddMinOrderQty4567" type="hidden" class="auto {mDec: 0}" value="3" />
</div>
jQuery:
<script type="text/javascript">
jQuery(document).ready(function(){
if (jQuery.browser.msie) {
jQuery("[id=^frmQuickAdd]").bind("keyup", CheckStr);
};
jQuery('[id=^frmQuickAdd]').change(CheckMin);
function CheckMin(){
var AmountStr = jQuery(this);
var Amount = Number(AmountStr.val().replace(/[$£,]+/g,""));
var ProductScope = jQuery(this).parent("div.ProductGrouping")
var MinQtyStr = jQuery("[id=^QuickAddMinOrderQty]",ProductScope);
var MinQty = Number(MinQtyStr.val().replace(/[$£,]+/g,""));
if (parseFloat(Amount) == 0){}
else if (parseFloat(Amount) == ''){}
else if(parseFloat(Amount) < parseFloat(MinQty)){
AmountStr.val(MinQtyStr.val());
};
};
function CheckStr(){
if (isNaN(jQuery(this).val() )) {
var ProductScope = jQuery(this).parent("div.ProductGrouping")
jQuery(this).val(jQuery("[id=^QuickAddMinOrderQty]",ProductScope).val())
}
};
});
</script>
Что-то явно не так с этим?Он не выполняет минимальную проверку, и я действительно не уверен, почему.
Спасибо
Дэвид