我们有一个快速订购表格,其中包含产品代码(sku)并返回产品并输入数量为1。
我们想要发生的是任何以EN9开头的SKU,我们希望将数量设置为0.
我已经尝试过为自己解决这个问题,但似乎没有去哪里因为我有非常简单的javascript体验。
这是设置所有内容的代码
var _parent = $j(this).parent().parent().parent();
var _productid = $j(this).find('.prodid').val();
var _sku = $j(this).find('.sku').html();
var _name = $j(this).find('.name').html();
var _price = $j(this).find('.pprice').val();
var _temp_name = _name;
_temp_name = _temp_name.replace(/(<([^>]+)>)/ig,"");
_parent.find('.txt-sku').html(_sku);
_parent.find('.txt-pcode').val(_temp_name);
_parent.find('.txt-qty').val(1);
_parent.find('.pname').html(_name);
_parent.find('.pqty').html(_price);
_parent.find('.btn-addcart').attr('alt', _productid);
$j('#allid').val($j('#allid').val()+','+_productid);
$j(this).parent().hide();
_key = '';
我可以看到_parent.find('.txt-qty').val(1);
将数量设置为1所以我假设我必须围绕这个包装一个IF语句。
我试过
if ( _sku == ('EN9)){
_parent.find('.txt-qty').val(1);}
else{
_parent.find('.txt-qty').val(0);
}
但没有运气。所以我将-sku改为.sku,但仍然没有运气。如果有人可以提供帮助,我将不胜感激。
答案 0 :(得分:4)
我会使用indexOf
像
这样的东西ggplot(arrange(mdat,variable,desc(value)), aes(variable, value, fill=day)) +
geom_bar(stat="identity", position="stack")+coord_flip()
如果EN9在SKU中的任何位置,这会将您的数量设置为0.
如果你在开始时需要它,特别是检查indexOf为0的返回值(我认为应该有效)。
if ( _sku.indexOf('EN9') > -1) {
_parent.find('.txt-qty').val(0);}
else{
_parent.find('.txt-qty').val(1);
}
答案 1 :(得分:2)
您可以使用indexOf
检查字符串是否以另一个字符串开头,然后相应地设置该值
var qty = _sku.indexOf('EN9') === 0 ? '0' : '1';
_parent.find('.txt-qty').val(qty);
答案 2 :(得分:2)
if ( _sku == ('EN9)){
这是一个搞砸的声明,这可以从这里缺乏明智的色彩来证明。 :)
您想要检查_sku
是否以EN9
开头。你可以通过检查前3个字符是否等于:
if (_sku.slice(0,3) == 'EN9') {}