2013-12-09 8 views
5

एक स्ट्रिंग जोड़ते समय, जावास्क्रिप्ट में एक टेक्स्टरेरा मान में सेट करते समय, यह लाइन ब्रेक को कन्वर्ट करने लगता है। हालांकि, डेटा स्ट्रिंग से इस स्ट्रिंग को पकड़ते समय, यह लाइन ब्रेक को \ njQuery टेक्स्टरेरा मान लाइन ब्रेक को परिवर्तित नहीं करता है

दोनों में स्ट्रिंग का प्रकार है, इसलिए मैं उलझन में हूं कि कोई कैसे काम करता है लेकिन दूसरा नहीं।

मैं डेटा विशेषता कैसे प्राप्त कर सकता हूं और लाइन ब्रेक को टेक्स्टरेरा के साथ कैसे काम कर सकता हूं? 

<div id="test" data-message="this&#13;test"></div> 

Updated fiddle

+0

जब मान '\' विशेषता से पढ़ने का उपयोग कर बच रहा है 'की तरह लग रहा \\', html' 'के बीच की लंबाई diff देखना और 'div' http://jsfiddle.net/arunpjohny/7q8RG/1/ –

उत्तर

7

आप एक HTML संपत्ति के भीतर लाइन ब्रेक के लिए HTML कैरेक्टर एंटिटी उपयोग करने की आवश्यकता डेटा \n विशेषताएँ बच गए होते जा रहा है, तो आप इसे बदलने की आवश्यकता:

$('#textarea2').val(div.replace("\\n","\n")); 

Example

+0

मुझे कितना मूर्खतापूर्ण है। धन्यवाद! – digitalclubb

+0

कोई समस्या नहीं, मदद करने में खुशी हुई। –

3

जब आप इसे से प्राप्त:

<div id="test" data-message="this\ntest"></div> 
<textarea id="textarea"></textarea> 
<textarea id="textarea2"></textarea> 
var html = 'this\ntest'; 
var div = $('#test').data('message'); 

$('#textarea').val(html); 
$('#textarea2').val(div); 

JSFiddle Example

+0

वैश्विक प्रतिस्थापन: 'div.replace (/ \\ n/g," \ n ")' – Pete

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