-3

你好,我的购物车里装满了 Elements This Ex 其中之一

    <div class="item-container cart-item">
    <div>
    <img border="0" onerror="src='http://www.myengravedjewelry.com/Admin/surfing.jpg'" title="Bloody Mary Style Colour Name Necklace" src="http://www.myengravedjewelry.com/Admin/surfing.jpg" alt="1009">
    <div class="item-header">
    <div class="item-body">
    <ul class="item-ul">
    <li>
    <li>
   <li>
    <span class="bold-14">Price:14.9 </span>
    </li>
      <li>
  <span>ShortId:1010 </span>
   </li>
   <li>
   <span>LongId:110-01-073-10 </span>
   </li>
      <li>
    <span class="spanDefCat">DefaultCat:334 </span>
    </li>
    </ul>
    </div>
    </div>
    <div class="item-footer"></div>
    </div>

当我按下保存时,我会查看每个元素并检查 DefaultCat==0

var elements = document.getElementsByClassName("cart-item");

我试着像这样到达这个 defaulCat

for(i=0;i<elements.length;i++){


        var elementContent=elements[i].find(".spanDefCat").html();
        var vars = elementContent.split(" ");
        var obj = {};
        vars.forEach(function(v) {
        var keyValue = v.split(":");
        obj[keyValue[0]] = keyValue[1];


    });
           DefaultCat = obj["DefaultCat"];
           ShortId = elements[i].children[1].alt;//New  style to take ShortID
            if(DefaultCat==0)setDefaultCatToProductId(parseInt(ShortId));
            arrSortedOrder[i]=parseInt(ShortId);

    }

有人知道如何达到这个值吗?ps 请不要用 $(.spanDefCat) 给我解决方案,因为当我发现 deff=0 时,我也需要从这个元素中获取 ShordId [i]

4

2 回答 2

2

尝试这个:

$(".cart-item").each(function(){
    var shortId = $(this).find(".bold-14").parent("li").siblings("li").children("span").html();
    var shortItem = shortId.replace(' ','').split(":");
    var defaultCat = $(this).find(".spanDefCat").html();
    var item = defaultCat.replace(' ','').split(":");  
    if(item[1]==0){
        var id = parseInt(shortItem[1]);
        //do something
    }else{
        var id = parseInt(shortItem[1]);
        //do something else
    }
    console.log(defaultCat);
    console.log(shortId);
});  

注意:上面的代码为您提供了DefaultCat:334ShortId:1010,因此现在您可以在 if else 语句中同时使用它们。如果DefaultCat:334
的格式对于所有购物车项目都相同,那么您可以检查它是否为0

JSFIDDLE 演示

于 2013-07-24T14:53:10.643 回答
1

我看到了 JQuery 标签,所以我用 JQuery 语句给你一个回应。

$(".cart-item").find(".spanDefCat").each(function(index, domEle){
    //get text, delete spaces and split
    split_result = $(domEle).text().replace(' ','').split(":");
    //get only numeric value as string
    defaultCat = split_result[1];
    //parse into int
    defaultCat = parseInt(defaultCat);
    //if your var is equal to 0
    if(defaultCat == 0){
        /********************* 
        * Type you code here *
        **********************/
    }
});
于 2013-07-24T15:05:17.507 回答