كيف أقوم بإنشاء في JavaScript ديناميكيًا يحتوي على كيان HTML ( - ... «)؟
-
06-07-2019 - |
سؤال
أود إضافة ملفu003Coption> عنصر لu003Cselect> العنصر حيثu003Coption> يحتوي نص العنصر على كيان HTML: -
في HTML ، سيبدو الرمز هكذا:
<select name="test" id="test">
<option value="">— Select One —</option>
</select>
يبدو رمز JavaScript الخاص بي هكذا:
function selectOne() {
var e = document.getElementById('test');
e.options[0] = new Option('— Select One —', '');
}
ومع ذلك ، كما سترى ما إذا كنت تختبر هذا ، فإن الهروب. كان لدي نفس النتيجة عندما حاولت:
e.options[o].text = '— Select One —';
(كان السلوك الملحوظ في Internet Explorer 7 ... لم يختبر مع Firefox و Safari وما إلى ذلك - Internet Explorer 7 هو المتصفح الوحيد الذي أحتاجه في الوقت الحالي.)
المحلول
لقد أدركت للتو أنه يمكنني استخدام الهروب من JavaScript Unicode:
e.options[0] = new Option('\u2014 Select One \u2014', '');
نصائح أخرى
لا تحتاج إلى الهروب من الكيان - فهو يعمل مثل هذا:
function selectOne() {
var e = document.getElementById('test');
e.options[0] = new Option('— Select One —', '');
}
text
لم يتم تكوين الممتلكات ، حيث من المفترض أن تؤخذ حرفيًا. كما ترى innerHTML
, ، يتم تحويل الكيانات إلى الأحرف المقابلة.
e.options[o].innerHTML = '— Select One —';
لا تنتمي إلى StackOverflow