একটি শিরোনাম বৈশিষ্ট্যে ডাবল উদ্ধৃতিগুলি কীভাবে পালানো যায়


195

আমি একটি স্ট্রিং ব্যবহার করার চেষ্টা করছি যা একটি অ্যাঙ্গারের শিরোনাম বৈশিষ্ট্যে ডাবল উদ্ধৃতি রয়েছে। এখনও পর্যন্ত আমি এগুলি চেষ্টা করেছি:

<a href=".." title="Some \"text\"">Some text</a>
<!-- The title looks like `Some \` --!>

এবং

<a href=".." title="Some &quot;text&quot;">Some text</a>
<!-- The title looks like `Some ` --!>

দয়া করে মনে রাখবেন একক উদ্ধৃতি ব্যবহার করছে না একটি বিকল্প।


18
@ হাইম প্রশ্নটি পড়ুন… এতে বলা হয়েছে "একক উদ্ধৃতি কোনও বিকল্প নয়"।
নীলস রিডিম্যান

2
@harpax - আমি কেবল কৌতূহলী ছিলাম কেন একক উদ্ধৃতিগুলি বিকল্প নয়?
বার্ট এফ

3
একক উদ্ধৃতি বৈধ এইচটিএমএল নয়।
স্কাইফুট 15

1
আপনার দ্বিতীয় উদাহরণটি পুরোপুরি নিখুঁতভাবে কাজ করা উচিত। আপনি কোন ব্রাউজারে সমস্যাটি দেখছেন?
অলি হজসন

1
@ হারপ্যাক্স: সম্ভবত আপনাকে "একক উদ্ধৃতি কোনও বিকল্প নয়"-প্রয়োজনীয়তাটি পরিষ্কার করতে হবে। আমি অনুমান করতে পারি যে আপনি "স্ট্রিং" এর ভিতরে "সিঙ্গেল কোটস" কোনও বিকল্প নন (যেমন ব্যবহারকারীকে প্রদর্শিত হচ্ছে), তবে হাইমের উপরে প্রদর্শিত হিসাবে কেবল একক এবং ডাবল উদ্ধৃতিগুলি উল্টানো ঠিক হবে।
খ্রিস্টান.কে

উত্তর:


284

এই রূপটি -

<a title="Some &quot;text&quot;">Hover me</a>

সঠিক এবং এটি প্রত্যাশার মতো কাজ করে - আপনি রেন্ডার পৃষ্ঠায় সাধারণ উদ্ধৃতিগুলি দেখতে পান।


হাঁ। <a href="#" title="Foo &quot;Bar&quot;">Testing</a>এবং <a href="#" title="Smart quotes &#8221;Bar&#8220;">Testing too</a>আমার জন্য কাজ।
অলি হজসন

5
@ মারিস: আচ্ছা ... আমি যখন & quot করি তখন রেন্ডার পৃষ্ঠায় সাধারণ উদ্ধৃতি দেখতে পাচ্ছি না; (ফায়ারফক্স, ক্রোম) কেন?
Krzysztof Trzos

@ মারিস, এখানেও একই সমস্যা। "& Quot;" পাঠ্যটি দেখুন আইএন এবং ক্রোম উভয় ক্ষেত্রে উপস্থিত হয় যখন ব্যবহারকারী মৌলের উপর দিয়ে মাউস দেয়।
স্টারহাউস

আশ্চর্যজনকভাবে এইচটিএমএল বিষয়বস্তুর সাথে এম্বেড করা এট্রিবিউটটির সাথে কাজ করেছেন (জাভাস্ক্রিপ্ট সম্পাদনযোগ্য data-editable-note="<?php echo str_replace('"', '&quot;', $note); ?>"><?php echo mark::up($note); ?></div>
টেক্সারিয়া

23

সংরক্ষণাগার.অর্গের একটি ক্যাশেড পৃষ্ঠা থেকে নেওয়া এইচটিএমএল পালানোর অক্ষরের একটি স্নিপেট এখানে রয়েছে :

&#060   |   less than sign  <       
&#064   |   at sign @       
&#093   |   right bracket   ]       
&#123   |   left curly brace    {       
&#125   |   right curly brace   }       
&#133   |   ellipsis    …       
&#135   |   double dagger   ‡       
&#146   |   right single quote  ’       
&#148   |   right double quote  ”       
&#150   |   short dash  –       
&#153   |   trademark   ™       
&#162   |   cent sign   ¢       
&#165   |   yen sign    ¥       
&#169   |   copyright sign  ©       
&#172   |   logical not sign    ¬       
&#176   |   degree sign °       
&#178   |   superscript 2   ²       
&#185   |   superscript 1   ¹       
&#188   |   fraction 1/4    ¼       
&#190   |   fraction 3/4    ¾       
&#247   |   division sign   ÷       
&#8221  |   right double quote  ”       
&#062   |   greater than sign   >   
&#091   |   left bracket    [   
&#096   |   back apostrophe `   
&#124   |   vertical bar    |   
&#126   |   tilde   ~   
&#134   |   dagger  †   
&#145   |   left single quote   ‘       
&#147   |   left double quote   “   
&#149   |   bullet  •   
&#151   |   longer dash —   
&#161   |   inverted exclamation point  ¡   
&#163   |   pound sign  £   
&#166   |   broken vertical bar ¦   
&#171   |   double left than sign   «   
&#174   |   registered trademark sign   ®   
&#177   |   plus or minus sign  ±   
&#179   |   superscript 3   ³   
&#187   |   double greater-than sign    »   
&#189   |   fraction 1/2    ½   
&#191   |   inverted question mark  ¿   
&#8220  |   left double quote   “   
&#8212  |   dash    —   

9

পালানোর কোডটি &#34;পরিবর্তে ব্যবহার করা যেতে পারে &quot;


3

&quot;এটি করার উপায়টি ব্যবহার করা। আমি আপনার দ্বিতীয় কোড স্নিপেট চেষ্টা করেছিলাম এবং এটি ফায়ারফক্স এবং ইন্টারনেট এক্সপ্লোরার উভয় ক্ষেত্রেই কাজ করে।


2

এটি এইচটিএমএল এস্কেপ অক্ষর তালিকা থেকে যে কোনও অক্ষরের সাথে কাজ করতে পারে তবে জাভা প্রকল্পে আমার একই সমস্যা ছিল। আমি ব্যবহার করেছি StringEscapeUtils.escapeHTML("Testing \" <br> <p>")এবং শিরোনাম ছিল <a href=".." title="Test&quot; &lt;br&gt; &lt;p&gt;">Testing</a>

এটি কেবল তখনই আমার পক্ষে কাজ করেছিল যখন আমি স্ট্রিংস্পেকটুল ইউটিলে পরিবর্তন করেছি StringEscapeUtils.escapeJavascript("Testing \" <br> <p>")এবং এটি প্রতিটি ব্রাউজারে কাজ করে।


আমার মতে সেরা সমাধান
মোহাম্মদ রফিক

আপনি যদি জাভা ব্যবহার করছেন তবে ভাল, তবে মূল অনুসন্ধানকারী হিসাবে এইচটিএমএল চাইছে, সম্ভবত এটি কোনও বিকল্প নয়।
পল

1

কমপক্ষে একটি পরিস্থিতি রয়েছে যেখানে একক উদ্ধৃতি ব্যবহার করা কার্যকর হবে না এবং তা হ'ল আপনি যদি জাভাস্ক্রিপ্ট থেকে "ফ্লাইতে" মার্কআপ তৈরি করছেন। স্ট্রিংটি ধারণ করতে আপনি একক উদ্ধৃতি ব্যবহার করেন এবং তারপরে মার্কআপের যে কোনও সম্পত্তিতে এর মানটির জন্য ডাবল উদ্ধৃতি থাকতে পারে।


1

আপনার ক্রস ব্রাউজার সমস্যা সমাধানের জন্য আপনি সম্ভবত জাভাস্ক্রিপ্ট ব্যবহার করতে পারেন। এটি একটি পৃথক এস্কেপ মেকানিজম ব্যবহার করে, এটির সাথে আপনি অবশ্যই স্পষ্টভাবে পরিচিত:

(reference-to-the-tag).title = "Some \"text\"";

এটি এইচটিএমএল, জাভাস্ক্রিপ্ট এবং সিএসএসের ফাংশনগুলিকে আজকাল যেভাবে আপনি চান তা কঠোরভাবে আলাদা করে না, তবে আপনার কাকে খুশি করা দরকার? আপনার ব্যবহারকারী বা প্রযুক্তিবিদরা আপনি জানেন না?


ওভারকিল যখন কাঙ্ক্ষিত এসল্টকে আরও সহজবোধ্য পদ্ধতিতে অর্জন করা যায়।
পল

-3

আপনি এই পিএইচপি কোডটি বিশেষ অক্ষর তালিকাবদ্ধ করতে ব্যবহার করতে পারেন ...

<table border="1"><?php for($i=33;$i<9000;$i++)echo "<tr><td>&#38;#$i;<td>&#".$i.";"; ?></table>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.