2009-09-04 10 views
15

की टेक्स्ट प्रॉपर्टी के अंदर सिंगल और डबल कोट्स सरल प्रश्न, मुझे पता है, लेकिन मुझे टेक्स्ट की संपत्ति की स्ट्रिंग में एकल और डबल कोट्स रखने का कोई तरीका नहीं दिख रहा है। Asp.netएएसपी.नेट: लिटल

<asp:Literal runat="server" id="Literal1" Text="This is my "text", isn't it pretty" /> 

उदाहरण के लिए, उपरोक्त कोड स्निपेट में। स्ट्रिंग 'टेक्स्ट' के आस-पास के पहले डबल-कोट पर बंद हो जाती है। मुझे पता है कि मैं उन्हें एकल कोट्स के साथ प्रतिस्थापित कर सकता हूं (या सभी डबल कोट्स का उपयोग कर और सिंगल कोट्स में स्ट्रिंग को लपेटें), लेकिन मुझे यकीन नहीं है कि दोनों का उपयोग कैसे करें। उद्धरण से बचने से काम नहीं लगता है।

कोड-बैक पर स्ट्रिंग सेट करना एक विकल्प है, ज़ाहिर है, जहां मैं डबल कोट्स से बच सकता हूं, लेकिन मैंने हमेशा कोड-पीछे पीछे हटने के बजाए एएसपीएक्स पर स्थैतिक पाठ रखने के लिए सबसे अच्छा सोचा है ।

उत्तर

27

आप उद्धरण चिह्न के लिए HTML enitity कोशिश कर सकते हैं के लिए: &quot;

<asp:Literal runat="server" id="Literal1" Text="This is my &quot;text&quot;, isn't it pretty" /> 
+0

हाँ, एएसपी.नेट वेब फॉर्म फ़ाइलें मूल रूप से एक्सएमएल फाइलें हैं, और सामान्य एक्सएमएल नियम उनके लिए लागू होते हैं। इस मामले में, आप उद्धरण चिह्न से बचने के लिए मानक एक्सएमएल इकाइयों का उपयोग करते हैं। संबंधित नोट पर: एम्पर्सेंड ('&') से बचने के लिए, आप '&' का उपयोग करेंगे। – Blixt

+0

* फेसपाल्म * मैं मूर्ख हूं। मैं इन सभी समय का उपयोग करता हूं। आज सुबह मेरे बेवकूफ फ्लेक्स हो गए थे, और उनके बारे में सब भूल गए थे। – Jeff

+0

यह वास्तव में एमएस पसंद करता है, क्योंकि यदि आप आईपी की सुझाई गई तकनीक का उपयोग करते हैं और 'जेनरेट स्थानीय संसाधन' चलाते हैं (जो पाठ को स्वरूपित करता है) तो इसका परिणाम पृष्ठ पर होता है। – Jeff

6

आप उपयोग कर सकते हैं:

<asp:Literal id="literal1" runat="server">This is my "text", isn't it pretty</asp:Literal> 

यह काम करना चाहिए आप

+0

क्या वैश्वीकरण के लिए अंतर्निहित टूल्स द्वारा पाठ को इस तरह से सेट किया गया है? – Jeff

+1

आईडी गुम है, लेकिन मुझे यह सबसे अच्छा लगता है। +1 – tvanfosson

+0

क्षमा करें हाँ, अगर मैं जानता हूं कि मुझे कोड के पीछे से इसे एक्सेस करने की आवश्यकता नहीं है, तो मैं अक्सर आईडी छोड़ देता हूं, फिर आप जेनरेट कोड में एक विशाल आईडी के साथ समाप्त नहीं होते हैं। – Paul

1

मैं बच पात्रों सुझाव है, लेकिन मुझे इनलाइनों का उपयोग करने के तरीके से अवगत नहीं है। इसके बजाय, मान को प्रारंभ करने के लिए कोड का उपयोग करें।

<asp:Literal runat="server" id="Literal1" Text="" /> 

... 

Literal1.Text = "This is my \"text\", isn't it pretty?"; 

वैकल्पिक रूप से, आप HTML एन्कोडिंग का उपयोग कहीं और सुझाए गए अनुसार कर सकते हैं।

<asp:Literal runat="server" id="Literal1" Text="Isn't &quot;it&quot; pretty?" /> 
+0

यह मेरा फॉलबैक है, ज़ाहिर है, लेकिन मैं स्थिर पाठ को सामने की तरफ रखना पसंद करता हूं, न कि कोड-पीछे। – Jeff

+0

गंभीरता से डाउनवोट पर? – Mayo

+0

+1 अब आप एक तटस्थ स्थिति पर वापस आ गए हैं: पी –

4

आप इस तरह एकल उद्धरण के अंदर डबल qoutes उपयोग कर सकते हैं:

<asp:Literal runat="server" id="Literal1" Text='This is my "text", isnt it pretty' /> 

लेकिन आप पाठ में उन दोनों का उपयोग करना चाहते हैं, यह करने के लिए सबसे अच्छा तरीका है

0
के पीछे कोड में है

मैं String.Format सुझाव देना चाहते हैं ...

...

literal1.Text = string.format ("{0}", "यह मेरा पाठ है, क्या यह सुंदर नहीं है?";

+2

कुछ समस्याएं: 1. यह प्रश्न 2 साल पुराना है, और इसमें कई उत्तरों हैं (एक स्वीकृत उत्तर सहित), जबकि पुराने प्रश्नों का उत्तर देना बुरा नहीं है, इसलिए देर से जवाब देने के लिए यह एक खराब विकल्प था। 2. यह कोड-बैक पर किया जाना चाहिए, एसीएक्स पेज नहीं, जो कि मेरे प्रश्न में संबोधित एक संभावना है। 3. आपका स्वरूपण खराब है। 4. आपने एक बंद कोष्ठक छोड़ दिया। – Jeff

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