كيف يمكنني استخدام Node Builder من Scriptacolus لإدراج html

StackOverflow https://stackoverflow.com/questions/71309

  •  09-06-2019
  •  | 
  •  

سؤال

على سبيل المثال هذا الرمز

var html = "<p>This text is <a href=#> good</a></p>";
var newNode = Builder.node('div',{className: 'test'},[html]);
$('placeholder').update(newNode);

يؤدي إلى إظهار p والعلامات، كيف يمكنني منع هروبهما؟

هل كانت مفيدة؟

المحلول

المعلمة الأخيرة لـ Builder.node هي "Array، قائمة العقد الأخرى التي سيتم إلحاقها كأبناء" وفقًا لـ ويكي.لذلك عندما تقوم بتمريرها سلسلة يتم التعامل معها كنص.

يمكنك استخدام:

var a = Builder.node('div').update("<a href='#'>foo</a>")

حيث يكون الرابط نصًا أو:

var a = Builder.node('div', {'class':'cool'}, 
         [Builder.node('div', {'class': 'another_div'})]
        );

ويمكنك استخدام النماذج الأولية فقط عنصر جديد () (متوفر اعتبارًا من الإصدار 1.6).

var a = new Element('div').insert(
          new Element('div', {'class': 'inner_div'}).update("Text in the inner div")
        );

نصائح أخرى

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top