// `shipment` is unique  number 

        var `shipment` = this.Shipment;
             $('<div id=' + this.Shipment + '>' + this.Shipment +'</div>').click(function () {


                 _Services.invoke({
                     method: 'GetOrdersGrid',
                     data: { ShipmentNumber: shipment },
                     success: function (shipment) {
                         paintOrders(`shipment`);

La fonction obtient un certain nombre de div et doit mettre le TEXTE dans le div

<div id="11626">TEXT</div>
<br>
<div id="12109">TEXT</div>

ERREUR: ("#" + items) .append n'est pas une fonction [Break On This Error] ('#' + items) .append ($ (container));

QUAND j'utilise le signe dollar $('#' + items).append($(container));

ERREUR exception non interceptée: erreur de syntaxe, expression non reconnue: # [objet objet]

WHEN i use without the #
 $(items).append(container); or  $(items).append($(container));

(this[0].ownerDocument || this[0]).createDocumentFragment is not a function
[Break On This Error] var fragment = (this[0].ownerDocument || this[0]).createDocumentFragment(), 
1
Kristina88 25 nov. 2011 à 22:00

4 réponses

Meilleure réponse

Vous manquez un $

Changement

('#' + items).append($(container));

À

$('#' + items).append($(container));

En supposant, bien sûr, que vous avez un élément avec id réglé sur ce que items résout.

4
sorpigal 25 nov. 2011 à 18:02

Essayez ce code:

function paintOrders(items) {
  var lastIndex = items.length - 1;
  $.each(items, function (index, item) {
    if (index == lastIndex)
      $('#'+item).append('<div>'+'TEXT'+'</div>');
    else
      $('#'+item).append('<div>'+'TEXT'+'</div>'+'<br/>');
  });
}

Peut-être que ce code n'est pas exactement ce dont vous avez besoin, mais vous pourriez en trouver des pistes.

0
megas 25 nov. 2011 à 18:27

Essayez ceci $('#' + items).append($(container)); au lieu de (items).append($(container));

// les articles sont un numéro unique

function paintOrders(items) {
    var container = '<div>';
    $.each(items, function () {
        container += 'TEXT' + '<br/>';
    });
    container += '</div>';

    $(items).append($(container));
}
0
Wazy 25 nov. 2011 à 18:04

Vous manquez le $

$('#' + items).append($(container));
1
jackJoe 25 nov. 2011 à 18:02