2012-08-10 5 views
5

का उपयोग करके संलग्न div को हटाकर यह मेरा कोड है ... परिशिष्ट काम कर रहा है लेकिन हटा रहा है काम नहीं कर रहा है। संलग्न div को कैसे निकालें?एपेंड विधि

<html> 
    <head> 
    <script type="text/javascript"> 
     function view(){ 
     $('body').append('<div class="added"><p>something</p></div>'); 
     }; 
     function close(){ 
     $('.added').remove(); 
     } ; 
    </script> 
    </head> 
    <body> 
    <a onclick="view();">something</a> 
    <a onclick="close();">close</a> 
    </body> 
</html> 
+0

मैं mistake..this द्वारा diff कोड लिखा एक और नाम रख कर मेरी कोड है अभी अभी ... जो काम नहीं कर रहा है – user1531746

उत्तर

5

अपने html हैंडलर में window.close निर्दिष्ट करें:

<a onclick="window.close();">close<a> 

http://jsfiddle.net/ZTwd7/1/

अन्यथा close() देशी close विधि है, जो कुछ नहीं करता को दर्शाता है।

यहां बताया गया है कि आप इसे एक "जावास्क्रिप्ट" के साथ का अनुकरण करेंगे हैंडलर (के रूप में इनलाइन करने के लिए एचटीएमएल विशेषता खिलाफ):

elem.onclick = function(event) { 
    with(Window.prototype) { 
     with(document) { 
      with(this) { 
       close(); 
      } 
     } 
    } 
}; 

यह सटीक प्रजनन नहीं है (और न ही यह IE आदि में काम करता है, उस बिंदु नहीं है) लेकिन यह .closeWindow.prototype में वैश्विक window.close के दायरे में रखेगा, इसलिए यह इसे छाया देता है। आप अभी भी window.close() के साथ स्पष्ट रूप से इसका उल्लेख कर सकते हैं।


तुम भी पूरी तरह से jQuery ऊपर छोड़ देना चाहिए और प्रयोग के बजाय:

<a id="view">something<a> 
<a id="close">close<a> 

जे एस:

$(function() { 
    $("#view").click(function() { 
     $('body').append('<div class="added"><p>something</p></div>'); 

    }); 
    $("#close").click(function() { 
     $('.added').remove(); 

    }); 
});​ 

http://jsfiddle.net/ZTwd7/5/


एक ajax अनुरोध है कि एक को हासिल करेगा बनाना एचटीएमएल फाई le संलग्न किया जा करने के लिए:

$.get("myhtml.html", function(html) { 
    $("body").append(html); 
}, "html"); 
+0

वैसे वह अपने काम के अंदर कर रहा है ... - क्षमा करें, बस अपनी टिप्पणी पढ़ें, पता नहीं था कि उसने अपना कोड बदल दिया है। – SamiSalami

+0

जो काम कर रहा है लेकिन क्या आप समझा सकते हैं ... कैसे 'खिड़की' जोड़कर यह ठीक काम करता है? – user1531746

+0

@ user1531746 क्योंकि 'window.close' को 'window.prototype.close' द्वारा छायांकित किया गया है। एचटीएमएल हैंडलर से बचने का एक अन्य कारण, उनके पास बहुत सारे 'जादू' हैं। – Esailija

1

पता नहीं क्यों, लेकिन बजाय समारोह पास() बंद करने के लिए यह काम करता है

<html> 
    <head> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 

    <script type="text/javascript"> 
      function view(){ 
        $('body').append('<div class="added"><p>something</p></div>'); 
      }; 
      function close_it(){ 
             $('.added').remove(); 

      } ; 

    </script> 
</head> 
<body> 
    <a onclick="view();">something<a> 
    <a onclick="close_it();">close<a> 
</body></html> 
संबंधित मुद्दे