admin管理员组

文章数量:1022603

I am entering some text in a input box. When entering a text I am giving some spaces means more then 1 space just say 4 or 5. But when I get the value from the input box and append to a div. It replaces all extra spaces with once single space.

Example, I enter text like this. "Hi     can   you please look    on   it      ?"

then if get the value using $("#inpuboxid").val(); then append that value to div.

it bee like this: "Hi can you please look on it ?"

How to achieve this, as browser automatically replaces extra spaces with once space

I am entering some text in a input box. When entering a text I am giving some spaces means more then 1 space just say 4 or 5. But when I get the value from the input box and append to a div. It replaces all extra spaces with once single space.

Example, I enter text like this. "Hi     can   you please look    on   it      ?"

then if get the value using $("#inpuboxid").val(); then append that value to div.

it bee like this: "Hi can you please look on it ?"

How to achieve this, as browser automatically replaces extra spaces with once space

Share Improve this question edited Aug 15, 2017 at 16:41 Cœur 38.8k25 gold badges206 silver badges279 bronze badges asked Feb 1, 2014 at 5:08 BoraBora 1,9253 gold badges28 silver badges55 bronze badges 6
  • 2 Ironically, stackoverflow does the same thing :p – Matt Way Commented Feb 1, 2014 at 5:11
  • 1 insert   instead of space. and try again – Gopal Joshi Commented Feb 1, 2014 at 5:13
  • 2 stackoverflow./questions/4503001/… – Matt Way Commented Feb 1, 2014 at 5:14
  • @MWay What stackoverflow does the same ? – Bora Commented Feb 1, 2014 at 5:24
  • @SureshBora Before your edit, stackoverflow also removed the spaces... – Matt Way Commented Feb 1, 2014 at 5:25
 |  Show 1 more ment

2 Answers 2

Reset to default 7

HTML squishes adjacent spaces together by default. Add a style of "white-space: pre;" to your div. This should keep all the white space in its contents.

<div style="white-space: pre;">Hi    can  you please look    on  it     ?</div>

See this Fiddle

After you set the text of the element, you can use the html method to replace spaces with &nbsp;. Here is an example.

$("#somelement").text($("#inpuboxid").val()).html(function(index,html){return html.replace(/ /g, '&nbsp;');})

I am entering some text in a input box. When entering a text I am giving some spaces means more then 1 space just say 4 or 5. But when I get the value from the input box and append to a div. It replaces all extra spaces with once single space.

Example, I enter text like this. "Hi     can   you please look    on   it      ?"

then if get the value using $("#inpuboxid").val(); then append that value to div.

it bee like this: "Hi can you please look on it ?"

How to achieve this, as browser automatically replaces extra spaces with once space

I am entering some text in a input box. When entering a text I am giving some spaces means more then 1 space just say 4 or 5. But when I get the value from the input box and append to a div. It replaces all extra spaces with once single space.

Example, I enter text like this. "Hi     can   you please look    on   it      ?"

then if get the value using $("#inpuboxid").val(); then append that value to div.

it bee like this: "Hi can you please look on it ?"

How to achieve this, as browser automatically replaces extra spaces with once space

Share Improve this question edited Aug 15, 2017 at 16:41 Cœur 38.8k25 gold badges206 silver badges279 bronze badges asked Feb 1, 2014 at 5:08 BoraBora 1,9253 gold badges28 silver badges55 bronze badges 6
  • 2 Ironically, stackoverflow does the same thing :p – Matt Way Commented Feb 1, 2014 at 5:11
  • 1 insert &nbsp; instead of space. and try again – Gopal Joshi Commented Feb 1, 2014 at 5:13
  • 2 stackoverflow./questions/4503001/… – Matt Way Commented Feb 1, 2014 at 5:14
  • @MWay What stackoverflow does the same ? – Bora Commented Feb 1, 2014 at 5:24
  • @SureshBora Before your edit, stackoverflow also removed the spaces... – Matt Way Commented Feb 1, 2014 at 5:25
 |  Show 1 more ment

2 Answers 2

Reset to default 7

HTML squishes adjacent spaces together by default. Add a style of "white-space: pre;" to your div. This should keep all the white space in its contents.

<div style="white-space: pre;">Hi    can  you please look    on  it     ?</div>

See this Fiddle

After you set the text of the element, you can use the html method to replace spaces with &nbsp;. Here is an example.

$("#somelement").text($("#inpuboxid").val()).html(function(index,html){return html.replace(/ /g, '&nbsp;');})

本文标签: javascriptSpace not taking when displaying value in divStack Overflow