2011-11-16 22 views
35
<div id="id1"> 
<p> 
    apple 
</p> 
<p> 
    ball 
</p> 
<p> 
    cat 
</p> 
<p> 
    dogsss 
</p> 
</div> 

की जगह मैं कैसे बदल सकता हूँ dogsssdollsss करने के लिए jquery का उपयोग कर?Jquery: पाठ का पता लगाएं और

+0

नहीं, सभी के लिए Tkz, लेकिन आपने मेरे अर्थ को गलत समझा है .. 'sss' एक ऐसा पाठ है जिसे मैं नहीं जानता कि यह वास्तव में क्या होगा .. लेकिन मैं 'कुत्ते' को 'गुड़िया' में बदलना चाहता हूं – william

+0

इसी प्रकार सी # को 'स्ट्रिंग temp = "स्वाद" को प्रतिस्थापित करें; temp = temp.Replace ("tast", "test"); 'sth। – william

उत्तर

67

आप कोशिश कर सकते हैं

$('#id1 p').each(function() { 
    var text = $(this).text(); 
    $(this).text(text.replace('dog', 'doll')); 
}); 

http://jsfiddle.net/2EvGF/

इसके बजाय आप .html() आगे इस्तेमाल कर सकते हैं और/या .replace() कॉल कृत्रिम अपनी आवश्यकताओं

9
$('p:contains("dogsss")').text('dollsss'); 
+0

यह 'dogsss' को 'गुड़िया' में बदल देगा –

+3

@EricC प्रश्न –

8

इस कोशिश,

$('#id1').html($('#id1').html().replace('dogsss','dollsss')); 

working sample

+0

@ जॉन हर्ट्सॉक का जवाब देने के बाद प्रश्न अपडेट किया गया था: कार्य नमूना देखें। यह अद्यतन हो रहा है। आशा है कि आप सेट एचटीएमएल भाग को याद करेंगे :) –

5

अधिक विशिष्ट के अनुसार:

$("#id1 p:contains('dog')").text($("#id1 p:contains('dog')").text().replace('dog', 'doll')); 
+0

एचटीएमएल टैग रखने के लिए '.text()' के बजाय '.html()' प्रयुक्त। – itskawsar

0

मैं कुछ इसी तरह की तलाश में था और मैं कोड है कि डौग ओविंग्स तैनात उपयोग करते हैं, लेकिन मेरे पाठ में कुछ br टैग थे और कोड इसे मिटा रहा था।

< p class = "textcontent" > 
    Here some text replace me 
    <br> here an other text 
    <br> here is more text 
< /p> 

जे एस:

$('.textcontent').each(function() { 

    var text = $(this).html(); 
    $(this).html(text.replace('replace me', 'I love this text')); 

}); 

इसके अलावा

पाठ (बस इतना ध्यान रखें कि मैं .text() .html के लिए() की जगह):

तो मैं इस का उपयोग यदि आप कई टेक्स्ट संपादित करना चाहते हैं तो एक सरणी बनाएं:

var replacetext = { 
    "Text 0": "New Text 0", 
    "Text 1": "New Text 1", 
    "Text 2": "New Text 2", 
    "Text 3": "New Text 3", 
    "Text 4": "New Text 4" 
}; 

$.each(replacetext, function(txtorig, txtnew) { 
    var text = $('#parentid').html(); 
    $('#parentid').html(text.replace(txtorig, txtnew)); 
}); 
+0

एक ही आईडी या एक ही कक्षा के साथ एकाधिक रिकॉर्ड के लिए इसका उपयोग कैसे करें? – Super

3

विधि खोजने और बदलने के परीक्षण के लिए। आप सरल तरीके से भी उपयोग कर सकते हैं।

var string ='my string' 
var new_string = string.replace('string','new string'); 

alert(string); 
alert(new_string); 
+0

शुद्ध जावास्क्रिप्ट हमेशा बेहतर है! – Shadowbob

0

Joanna Avalos जवाब बेहतर है, बस ध्यान दें कि मैं .html() करने के लिए .text() बदल दिया, अन्यथा, कि अंदर एचटीएमएल तत्वों में से कुछ नष्ट हो जाएगा।

संबंधित मुद्दे