在下拉列表中,我需要在列表中的选项前添加空格。 我在尝试

<select>
<option>&#32;&#32;Sample</option>
</select>

添加两个空格但不显示空格。 如何在选项文本之前添加空格?

===============>>#1 票数:27 已采纳

&#160是空间的实体?

<select>
<option>&#160;option 1</option>
<option>    option 2</option>
</select>

对我有用......

编辑:

刚检查一下,在旧版浏览器中可能存在兼容性问题,但在这里似乎一切正常。 只是想我应该让你知道,因为你可能想要替换为&nbsp;

===============>>#2 票数:16

\\ xA0与String 一起使用。 这项工作完美,同时将C#模型数据绑定到下拉列表...

  SectionsList.ForEach(p => { p.Text = "\xA0\xA0Section: " + p.Text; });

===============>>#3 票数:14

我想你想要&nbsp; &#160;

所以你的例子的固定版本可能是......

<select>
  <option>&nbsp;&nbsp;Sample</option>
</select>

要么

<select>
  <option>&#160;&#160;Sample</option>
</select>

===============>>#4 票数:8

正如Rob Cooper指出的那样,旧浏览器存在一些兼容性问题(IE6会显示实际的字母“&nbsp;”

这就是我在ASP.Net中解决这个问题的方法(我没有打开VS所以我不确定这些字符实际上被翻译成了什么):

Server.HtmlDecode("&nbsp;") 

===============>>#5 票数:6

我尝试了很多东西,但唯一对我有用的是使用javascript。 只是注意到我使用的是unicode代码用于空间而不是html实体,因为js doenst知道关于实体的事情

$("#project_product_parent_id option").each(function(i,option){
  $option = $(option);
  $option.text($option.text().replace(/─/g,'\u00A0\u00A0\u00A0'))
});

===============>>#6 票数:5

您也可以按alt + space(在Mac上)以获得不间断的空间。 我将它用于Drupal模块,因为Drupal解码了html实体。

===============>>#7 票数:4

我几乎可以肯定你也可以通过CSS填充实现这一点。 然后,您将不会与硬编码到所有<option>标签中的空格字符结婚。

===============>>#8 票数:4

@布赖恩

我几乎可以肯定你也可以通过CSS填充实现这一点。 然后,您将不会与硬编码到所有标签中的空格字符结婚。

好的想法 - 但不幸的是它不起作用(每个人最喜欢的浏览器......)IE7 :-(

这里有一些代码可以在Firefox中使用(我假设Op / Saf)。

<select>
    <option style="padding-left: 0px;">Blah</option>
        <option style="padding-left: 5px;">Blah</option>
            <option style="padding-left: 10px;">Blah</option>
    <option style="padding-left: 0px;">Blah</option>
        <option style="padding-left: 5px;">Blah</option>
</select>

===============>>#9 票数:2

只需使用char 255(在数字键盘上输入Alt + 2 + 5 + 5 )和Courier New等等宽字体。

===============>>#10 票数:1

&nbsp;

你能试试吗? 还是一样吗?

===============>>#11 票数:1

Server.HtmlDecode("&nbsp;")是唯一适合我的。

否则chr将打印为文本。

我试图将填充添加为listitem的属性,但它并没有影响它。

===============>>#12 票数:0

我也有同样的问题,我被要求尽快解决这个问题。 虽然我搜索了很多,但我找不到快速的解决方案。

相反,我使用了自己的解决方案,虽然我不确定它是否合适,但它适用于我的情况以及我需要做的事情。

因此,当您在下拉列表中添加ListItem并且想要添加空间时,请使用以下内容: -

ALT键并在数字键盘上键入0160 ,因此它应该类似于ALT+0160 它会增加一个空间。

ListItem("ALT+0160 ALT+0160 TEST", "TESTVAL")

===============>>#13 票数:0

在PHP中,您可以使用html_entity_decode:

obj_dat.options[0] = new Option('Menu 1', 'Menu 1');
obj_dat.options[1] = new Option('<?php echo html_entity_decode('&nbsp;&nbsp;&nbsp;'); ?>Menu 1.1', 'Menu 1.1');

===============>>#14 票数:-1

我尝试了几个这样的例子,但唯一有用的是使用javascript,就像dabobert的,但不是jQuery,只是简单的旧vanilla javascript和空格:

for(var x = 0; x < dd.options.length; x++)
{
    item = dd.options[x];
    //if a line that needs indenting
    item.text = '     ' + item.text; //indent
}

这只是IE浏览器。 事实上IE11。 啊。

===============>>#15 票数:-1

1.Items返回列表

2.Foreach循环列表

3 ..

foreach (var item in q)
{
    StringWriter myWriter = new StringWriter();

    myWriter.Lable = HttpUtility.HtmlDecode(item.Label.Replace(" ", "&nbsp;"));
}

这项工作对我来说!!!

  ask by Serhat Ozgel translate from so

未解决问题?本站智能推荐: