ЙажаСценарий / Говнокод #17828 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
function getProductIds(text, containerId) {
        var products = new Array();
 
        var valueFound = false;
 
        var start = 0;
        var end = 0;
        var itemCount = 0;
        var curChar = 0;
 
        var readStart = text.indexOf(containerId);
 
        var triggerChar = ">";
 
        while (valueFound == false) {
            if (text.substring(readStart + curChar, readStart + curChar + triggerChar.length) == triggerChar)
                valueFound = true;
            else
                curChar++;
        }
 
        start = readStart + curChar + 1;
 
        valueFound = false;
        triggerChar = "</div>";
 
        while (valueFound == false) {
            if (text.substring(readStart + curChar, readStart + curChar + triggerChar.length) == triggerChar)
                valueFound = true;
            else
                curChar++;
        }
 
        end = readStart + curChar;
 
        var itemsHtml = text.substring(start, end).replace(" ", "").replace("\n", "");
 
        curChar = 0;
 
        triggerChar = "ProductId";
 
        while (curChar < itemsHtml.length) {
            if (itemsHtml.substring(curChar, curChar + triggerChar.length) == triggerChar)
                itemCount++;
 
            curChar++;
        }
 
 
 
        for (var curItem = 1; curItem <= itemCount; curItem++) {
 
            var product = new Array();
 
            product[0] = getValue(itemsHtml, "LineItem_" + curItem + "_ProductId", "value=\"", "\"", 1);
            product[1] = getValue(itemsHtml, "LineItem_" + curItem + "_ProductName", "value=\"", "\"", 1);
            product[2] = getValue(itemsHtml, "LineItem_" + curItem + "_Quantity", "value=\"", "\"", 1);
            product[3] = getValue(itemsHtml, "LineItem_" + curItem + "_UnitPrice", "value=\"", "\"", 1);
 
            products[curItem - 1] = product;
 
        }
 
        return products;
    }

Шедевральный код. Работают с HTML даже не на нативном js, а как с обычной строкой. Правильно, зачем париться - строки знают все :)

PS Код не мой. Однако стоит отметить, что он успешно используется на реальных сайтах :)

Запостил: sashapinsk sashapinsk, (Updated )

Комментарии (1) RSS

  • >>PS Код не мой.
    Мопед не мой, я только обьяву разместил
    Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8