2012-08-31 6 views
5

में एचटीएमएल कोड शामिल है मेरे पास मूलभूत क्वाशन है। क्या मैं जेएस में एक एचटीएमएल कोड शामिल कर सकता हूं? ("दस्तावेज़.लिखें" के साथ)में जेएस

यह मेरा एचटीएमएल कोड है:

<li><a href="#" class="menulink">text</a></li> 
<li><a href="#" class="menulink">text</a> </li> 
<li><a href="#" class="menulink">text</a> 
    <ul> 

     <li> 
      <a href="#" class="sub">text</a> 
      <ul > 
       <li class="topline"><a href="#">text</a></li> 
       <li><#">text </a></li> 
       <li><a href="#">text</a></li> 
       <li><a href="#">text</a></li> 
       <li><a href="#">text</a></li> 
       <li><a href="#"text</a></li> 
       <li><a href="#">text</a></li> 

      </ul> 
     </li> 
     <li> 
      <a href="#" class="sub">text </a> 
      <ul> 
       <li class="topline"><a href="#">text</a></li> 
       <li><a href="#">text</a></li> 



    </ul> 
</li> 

    <li> 
        <a href="#" class="sub"> text </a></li> 
      <li> 
        <a href="#" class="sub"> text </a></li> 
      </ul> 
     </li> 

      <li> 
    <a href="#" class="menulink">text</a> 


</li> 
<li><a href="#" class="menulink">text</a> 

और मैं इसे शामिल करने के लिए इस जेएस में कोड

window.onload = function() { 
    document.getElementById("menu").innerHTML=""; 

इस कोड से कनेक्ट हैं:

<p id="dropdown_menu"></p> 

मैं इसे कैसे कर सकता हूं?

पूर्ण कोड यहाँ हैhttp://jsfiddle.net/tsnave/eSgWj/4/ धन्यवाद ..

+0

मैंने कोड बदल दिया ... अनुरोध मेरी मदद करें ... –

उत्तर

2
document.getElementById("menu").innerHTML=' 
    <li class="topline"><a href="#">some text</a></li> 
    <li><a href="#">some text </a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#"some text</a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#">some text</a></li> 
'; 

सभी मैं वास्तव में किया था एकल उद्धरण के लिए उद्धरण के लिए स्विच इसलिए एचटीएमएल विशेषताओं गड़बड़ स्ट्रिंग सदस्यता ग्रहण नहीं करते थे। यदि आपको innerHtml स्ट्रिंग में सिंगल कोट्स डालने की आवश्यकता है, तो आप उन्हें बैकस्लैश से बच सकते हैं, यानी: innerHtml = ' Don\'t break me';

+0

मैंने कोशिश की ... यह काम नहीं करता .. क्यों? –

+0

इसके बारे में क्या काम नहीं करता है? क्या आपको कोई त्रुटि मिलती है? – Dunhamzzz

+0

नहीं ... मैं बस ब्राउज़र में पाठ नहीं देख सकता ... –

2

आप कर सकते हैं:

document.getElementById("menu").innerHTML="<div>hello</div>" 
9

मैं जे एस में एचटीएमएल कोड शामिल कर सकते हैं?

यदि इसका मतलब है कि आप जावास्क्रिप्ट के माध्यम से HTML आउटपुट कर सकते हैं तो उत्तर हाँ है उदा।

window.onload = function() { 
    document.getElementById("menu").innerHTML = '<li class="topline"><a href="#">some text</a></li> 
       <li><a href="#">some text </a></li> 
       <li><a href="#">some text</a></li> 
       <li><a href="#">some text</a></li> 
       <li><a href="#"some text</a></li> 
       <li><a href="#">some text</a></li> 
       <li><a href="#">some text</a></li>'; 
} 
0
window.onload = function(){ 
    document.getElementById("menu").innerHTML='<li class="topline"><a href="#">some text</a></li><li><a href="#">some text </a></li><li><a href="#">some text</a></li><li><a href="#">some text</a></li><li><a href="#"some text</a></li><li><a href="#">some text</a></li><li><a href="#">some text</a></li>'; 
} 

संपादित:

यह काम करना चाहिए।

<script type="text/template" id="myHtml"> 
    <li class="topline"><a href="#">some text</a></li> 
    <li><a href="#">some text </a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#"some text</a></li> 
    <li><a href="#">some text</a></li> 
    <li><a href="#">some text</a></li> 
</script> 

तो फिर तुम यह जावास्क्रिप्ट में प्राप्त कर सकते हैं

var myHtml = document.getElementById('myHtml').innerHTML; 

या का उपयोग करते हुए:

<script type="text/javascript"> 
window.onload = function(){ 
    document.body.innerHTML = 
     '<li><a href="#" class="menulink">text</a></li>' 
     +'<li><a href="#" class="menulink">text</a></li>' 
     +'<li><a href="#" class="menulink">text</a><ul>' 
     +'<li><a href="#" class="sub">text</a><ul>' 
     +'<li class="topline"><a href="#">text</a></li>' 
     +'<li><a href="#">text </a></li><li><a href="#">text</a></li>' 
     +'<li><a href="#">text</a></li><li><a href="#">text</a></li>' 
     +'<li><a href="#"text</a></li><li><a href="#">text</a></li></ul>' 
     +'</li><li><a href="#" class="sub">text </a><ul>' 
     +'<li class="topline"><a href="#">text</a></li>' 
     +'<li><a href="#">text</a></li></ul></li>' 
     +'<li><a href="#" class="sub">text</a></li>' 
     +'<li><a href="#" class="sub">text</a></li>' 
     +'</ul></li><li><a href="#" class="menulink">text</a></li>' 
     +'<li><a href="#" class="menulink">text</a>'; 

} 

+1

मैंने संपादन को वापस ले लिया क्योंकि जेएस तारों में लाइनब्रैक का समर्थन नहीं करता है। – Florent

+0

हाय। धन्यवाद! मैं ऊपर दिए गए कोड को बदलता हूं और अब आपका समाधान काम नहीं करता है ... क्या आप मेरी मदद कर सकते हैं? –

+1

सुनिश्चित करें कि आईडी = "मेनू" वाला एक HTML तत्व है और पृष्ठ लोड होने के बाद इस कोड को चलाएं, उत्तर को संशोधित करें, इसे आजमाएं, काम करना चाहिए। –

7

यह ऐसा करने का एक अलग तरह से एक स्क्रिप्ट टैग के अंदर एचटीएमएल डाल करने के लिए है कई पुस्तकालयों में से एक का उपयोग करके जो आपको इससे मदद करता है। type="text/template" के साथ एक स्क्रिप्ट टैग के अंदर कोड को ब्राउज़र द्वारा व्याख्या या दिखाया नहीं जाएगा। जावास्क्रिप्ट में इसे सीधे एक स्ट्रिंग में डालने पर इस दृष्टिकोण का लाभ यह है कि यह आपको अपने संपादक में सामान्य HTML के रूप में व्यवहार करने की अनुमति देता है, और यह जावास्क्रिप्ट को साफ रखता है। this post by John Resig भी देखें।