Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net ASP:DropDownList中未安装文本_Asp.net_Drop Down Menu - Fatal编程技术网

Asp.net ASP:DropDownList中未安装文本

Asp.net ASP:DropDownList中未安装文本,asp.net,drop-down-menu,Asp.net,Drop Down Menu,我使用的是ASP:DropdownList(代码隐藏方法),它与一些事件相关,我的问题是我的全文在DropdownList中不可见,这是由于下拉列表的宽度无法增加,因此如何显示全文 我搜索了这个链接 在一个地方,我使用了jQueryUI小部件,但我的事件并没有被触发,因为它最终呈现文本框 有人有什么解决办法吗 提前谢谢 CSS类 .dropdown { border: #000000 1pt solid; font-weight: normal; font-size:

我使用的是
ASP:DropdownList(代码隐藏方法)
,它与一些事件相关,我的问题是我的全文在DropdownList中不可见,这是由于下拉列表的宽度无法增加,因此如何显示全文 我搜索了这个链接

在一个地方,我使用了jQueryUI小部件,但我的事件并没有被触发,因为它最终呈现文本框

有人有什么解决办法吗

提前谢谢

CSS类

.dropdown
 {
    border: #000000 1pt solid;
    font-weight: normal;
    font-size: 13px;
    vertical-align: middle;
    font-style: normal;
    font-family: verdana;
    text-align: left;
    height: 22px;
    overflow:visible;
}

据我所知,您在显示选项文本方面存在问题

这些是ur选项的样式类

comboboxDropDownItemClass: "comboboxItem", 
comboboxDropDownItemHoverClass: "comboboxItemHover",
这是您的选项样式表

.comboboxItem { background:#fff; color:#000; text-transform:lowercase; 
                font-weight:normal; font-style:normal; overflow:visible; } /* here is ur text visibility */ 

.comboboxItemHover { background-color:#999; color:#fff; text-transform:uppercase;
                     padding-left:4px; overflow:visible; } /* here is ur text visibility */ 
你需要做的只是把
溢出:可见那里


如果仍然没有解决问题,只需更改应该执行此任务的
comboboxItem的宽度。

您可以调整字体大小,使其“自动适应”下拉列表的宽度

要实现这一点,只需在选择项目时减小字体大小,直到其适合:

$(document).ready(function() {
    $(".dropdown").each(function() {
        $(this).data("org_fontsize", $(this).css("font-size"));
    });


    $(".dropdown").change(function() {
        var ddl = $(this);
        var fontSize = parseInt(ddl.css("font-size"), 10);
        if (!isNaN(fontSize)) {
            var originalWidth = ddl.outerWidth();
            ddl.css("width", "auto");
            var currentWidth = ddl.outerWidth();
            if (currentWidth > originalWidth) {
                while (currentWidth > originalWidth) {
                    fontSize--;
                    if (fontSize < 2)
                        break;
                    ddl.css("font-size", fontSize + "px");
                    currentWidth = ddl.outerWidth();
                }
            }
            else {
                ddl.css("font-size", ddl.data("org_fontsize"));
            }
            ddl.css("width", originalWidth + "px");
        }
    });
});
$(文档).ready(函数(){
$(“.dropdown”).each(函数(){
$(this.data(“org_fontsize”,$(this.css(“font size”));
});
$(“.dropdown”).change(函数(){
var ddl=$(此值);
var fontSize=parseInt(ddl.css(“字体大小”),10);
如果(!isNaN(fontSize)){
var originalWidth=ddl.outerWidth();
css(“宽度”、“自动”);
var currentWidth=ddl.outerWidth();
如果(当前宽度>原始宽度){
而(当前宽度>原始宽度){
字体大小--;
如果(字体大小<2)
打破
css(“字体大小”,fontSize+“px”);
currentWidth=ddl.outerWidth();
}
}
否则{
css(“字体大小”,ddl.data(“org_fontsize”);
}
css(“宽度”,原始宽度+“px”);
}
});
});
这还将恢复不超过宽度的项目的原始字体大小


.

不需要为这个问题实现任何混乱的逻辑。答案是甜蜜而简单的。只需在.aspx页面的ASP:DropdownList中删除属性“Width”。下拉列表将扩展到添加到其中的最大项目的宽度


同时删除添加到下拉列表Css类中的宽度属性。

你能发布你的代码吗?这样我们就可以看到它了?我建议您使用dropdownlist控件的cssclass属性尝试放置溢出:可见;对于你的dropdownlist样式,我把overflow:visible放在Mozilla和Chrome中,但在IE 7,8中不起作用,我不能增加宽度,因为文本太大了,它从来就不适合这种方式,这一点我并不感到惊讶。IE总是有很多问题,但我会寻找解决方案。尝试添加溢出:可见!重要的;如果在你的css表中有IE溢出的覆盖!“重要”将使其成为第一优先级,并且对ur元素有影响的相同类型的所有其他样式(在这种情况下为溢出)将被ur“重要”覆盖!造型。同样对于ie6,你可以使用“*html.blaclass{/*style here!*/}”,你也可以使用其他方法。比如用jquery在ur元素上添加样式。我没果汁了。通知我它是否有效。或者我只是想到了让它像这样,只是添加“标题”到您的选项,其中有相同的文本,你也可以让你的下拉标题改变你的选择选项。这将允许你看到任何文本在你的选项时,你的鼠标在他们。是的,这是一个很好的解决方案,我完全同意+1.为了简单起见,这篇文章太大了,根本放不下way@d.Siva . 这个解决方案同样适用于我和伯克。你可以发布你正在添加的文本大小吗。还要检查添加了ASP:DropdownList的容器不应具有固定大小;如果您的文本比容器本身的宽度太大。@d.Siva。将此代码放入代码隐藏页面保护的无效页面加载(对象发送方,事件参数e){string item=string.Empty;DropDownList1.Items.Add(“foofoo”);for(int i=0;i<100;i++){item+=“foo”;}DropDownList1.Items.Add(item);}在您的aspx页面中显示此代码。我可以在下拉列表中添加一个宽度为300个字符的项目,它可以动态扩展。@d.Siva。我刚才做得很好。你说的“不工作”是什么意思?在IE 7、8中展开下拉列表后全文不可见对不起,无法复制。。尝试使用IE9兼容视图,该视图应模拟IE8,但仍调整了文本大小以适应宽度。