2010-02-06 13 views
5

मैं कुछ निर्दिष्ट शब्दों को स्पैन-टैग के साथ लपेटने का सबसे सुविधाजनक तरीका जानना चाहता हूं।jQuery में अवधि के साथ कुछ निर्दिष्ट शब्द लपेटें?

उदाहरण: मेरे पास एक शब्द है, जो कुत्ता है।

I have a dog, do you have a dog? 

और उत्पादन इस तरह होना चाहिए:

I have a <span class="highlight">dog</span>, do you have a <span class="highlight">dog</span>? 

किसी भी मदद यहाँ मूल पाठ है?

संपादित करें: ध्यान दें, कि यह भी शब्द लपेटो चाहिए, भले ही वे invidual नहीं कर रहे हैं (पीटर कुत्ता)। आशा है कि आपको मिल गया।

+1

कृपया जब सवाल पूछ, एक jQuery समाधान के लिए अपने शीर्षक को सीमित करने से बचना, jQuery एक भाषा नहीं है, जे एस है, इस प्रकार समाधान जावास्क्रिप्ट में होना चाहिए। – vsync

उत्तर

3

यहां एक उपयोगी jQuery plugin है।

यह उपयोग करना वास्तव में आसान है और यह बहुत अच्छा काम करता है।

संपादित करें — यह मेरा एक बहुत पुराना जवाब है। मुझे खेद है कि लेटरिंग.जेएस लाइब्रेरी को इसके नाम को शामिल किए बिना बस लिंक किया गया है। लाइब्रेरी उपयोगी है, हालांकि मुझे 7 साल बाद यह सुनिश्चित नहीं है कि श्री रूपर्ट सक्रिय रूप से इसे बनाए रखने के लिए जारी है या नहीं।

क्या लेटरिंग डीओएम के किसी चयनित क्षेत्र में टेक्स्ट नोड्स के माध्यम से जाता है और <span> टैग में अलग-अलग अक्षर और/या शब्दों (कॉन्फ़िगर करने योग्य) को लपेटता है जिसे स्टाइल किया जा सकता है। यह सरल लेकिन प्रभावी है। यहां तक ​​कि यदि आप इसका उपयोग नहीं करना चाहते हैं, तो कोड बहुत व्यापक नहीं है और यह निर्देशक है।

+1

स्टैक ओवरव्लो पर टिन्यूरल का उपयोग करने की कोई आवश्यकता नहीं है, यही मार्कडाउन के लिए है। –

+0

धन्यवाद, उपयोग करने में आसान! –

4

आप JavaScript replace function का उपयोग कर सकते हैं। यहाँ एक बुनियादी उदाहरण है:

$('#container').html($('#container').html().replace(/(dog)/g,'<span class="highlight">$1</span>')); 
+0

.val() केवल फॉर्म तत्वों पर काम करना चाहिए। आपको .text() यहां चाहिए - अगर मैं गलत नहीं हूं। – onigunn

+0

आप गलत नहीं हैं - यह उत्तर वास्तव में मूल प्रश्न नहीं देगा, जो पाठ को चलाने में शब्दों के बारे में है, फॉर्म तत्वों में नहीं। फिर भी, फॉर्म तत्व मानों के अंदर स्पैन टैग डालने से वैसे भी काम नहीं करेगा। – Pointy

+1

दरअसल, यह एचटीएमएल() है। कोड तय और परीक्षण किया। –