我发现了我认为是Firefox的一个错误,我想知道这是否真的是一个错误,以及任何解决方法.
如果您使用以下来源创建基本网页:
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
</head>
<body>
<div>
<input id="txtTest" type="text" />
<input type="button" onclick="$('#txtTest').attr('disabled','disabled');" value="Set Disabled (jQuery)" />
<input type="button" onclick="document.getElementById('txtTest').disabled = true;" value="Set Disabled (js)" />
<input type="button" onclick="$('#txtTest').removeAttr('disabled');" value="Remove Disabled" />
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
如果您disable
的textbox
动态再刷新页面,则textbox
仍然会被禁用,而不是重新回到原来的状态没有被禁用.我在IE8和Chrome中尝试过这种方法,并且这些操作与我期望的一样,textbox
当我刷新时将其重置为未禁用.
另一个有趣的信息是,如果输入是a checkbox
而不是a ,它仍然会做同样的事情textbox
.
例如,当文本框为空时,Facebook在"搜索"文本框中有"搜索"提示文本.
如何用WPF文本框实现这一点?
如何将焦点设置TextBox
在WPF中的元素上
我有这个代码:
txtCompanyID.Focusable = true;
txtCompanyID.Focus();
Run Code Online (Sandbox Code Playgroud)
......但它不起作用.
任何的想法?
所以我到目前为止的代码是:
<fieldset id="LinkList">
<input type="text" id="addLinks" name="addLinks" value="http://">
<input type="button" id="linkadd" name="linkadd" value="add">
</fieldset>
Run Code Online (Sandbox Code Playgroud)
它不在a中<form>
,就像在a中一样<div>
.但是,当我在textbox
被调用的"addLinks"中键入内容时,我希望用户能够按Enter键并触发"linkadd" button
,然后运行JavaScript函数.
我怎样才能做到这一点?
谢谢
编辑: 我确实找到了这段代码,但似乎没有用.
$("#addLinks").keyup(function(event){
if(event.keyCode == 13){
$("#linkadd").click();
}
});
Run Code Online (Sandbox Code Playgroud) 我正在使用Windows表单,我有一个文本框,如果它是一定值,我偶尔会喜欢使文本变粗.
如何在运行时更改字体特征?
我看到有一个名为textbox1.Font.Bold的属性,但这是一个Get only属性.
尽管在这个论坛和其他人的一些帖子,我找不到一些东西,告诉我如何把重点放在一个TextBox
.
我有一个带有许多标签和textBoxes的userControl.加载表单时,我希望特定的textBox具有焦点.
我已经设置了tabIndex,但似乎没有用.
有什么建议?
我有一个非常简单的测试应用程序,只是为了玩Windows Phone 7.我刚刚添加了一个TextBox
和一个TextBlock
标准的UI模板.唯一的自定义代码如下:
public partial class MainPage : PhoneApplicationPage
{
public MainPage()
{
InitializeComponent();
}
private int counter = 0;
private void TextBoxChanged(object sender, TextChangedEventArgs e)
{
textBlock1.Text += "Text changed " + (counter++) + "\r\n";
}
}
Run Code Online (Sandbox Code Playgroud)
该TextBox.TextChanged
事件TextBoxChanged
在XAML中连接到:
<TextBox Height="72" HorizontalAlignment="Left" Margin="6,37,0,0"
Name="textBox1" Text="" VerticalAlignment="Top"
Width="460" TextChanged="TextBoxChanged" />
Run Code Online (Sandbox Code Playgroud)
但是,每当我在模拟器中运行时按一个键(屏幕键盘或物理键盘,按下Pause以启用后者),它会使计数器递增两次,显示两行TextBlock
.我尝试的所有东西都表明这个事件真的发射了两次,我不知道为什么.我已经验证它只被订阅了一次 - 如果我在MainPage
构造函数中取消订阅,当文本改变时,根本没有任何事情发生(对于文本块).
我在常规的Silverlight应用程序中尝试过等效的代码,并没有在那里发生.目前我没有手机可以重现这一点.我还没有找到任何关于Windows Phone 7中已知问题的记录.
任何人都可以解释我做错了什么,或者我应该将此报告为错误?
编辑:为了减少这两个文本控件的可能性,我已经尝试TextBlock
完全删除,并将TextBoxChanged方法更改为只是增量counter
.然后我在模拟器中运行,键入10个字母,然后counter++;
在行上放置一个断点(只是为了摆脱闯入调试器导致问题的任何可能性) - 它显示 …
我想在我的WPF中添加一个简单的(至少我认为是)行为TextBox
.
当用户按Escape时,我希望TextBox
他正在编辑以获得用户开始编辑时所具有的文本,并且我想从中移除焦点TextBox
.
我没有任何问题为编辑开头的值设置文本.
问题是要删除元素的焦点.我不想把焦点转移到任何其他组件,我只是想TextBox
失去焦点.我是否必须有一个不可见的元素来设置焦点,以便我TextBox
可以失去焦点?
好吧,这似乎是不可能的.我有一个文本框和一个选择框.我希望它们的宽度完全相同,因此它们在左边距和右边距上排列.
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
input, select {
width: 200px;
}
</style>
</head>
<body>
<input type="text" value="ABC"><br>
<select>
<option>123</option>
</select>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
那就是你想的,对吗?不.Firefox中的选择框缩短了6个像素.见截图.
好吧,让我们编辑代码并制作两种样式.
<style type="text/css">
input {
width: 200px;
}
select {
width: 206px;
}
</style>
Run Code Online (Sandbox Code Playgroud)
好的,有效!
哦等等,在Chrome中更好的测试......
有人能告诉我如何在所有浏览器中排列这些内容吗?为什么我不能只做宽度:200px,为什么所有的浏览器都以不同的方式显示它?另外,当我们处理它时,为什么文本框和选择框的高度不同?我们如何让它们达到同样的高度?尝试过高度和线高并没有用.
好的,我已经从下面的答案中找到了解决方案.关键是使用box-sizing:border-box属性,以便在指定包含边框和填充的宽度时使用.见这里优秀的解释.然后浏览器无法填充它.
代码如下,还将框的高度设置为相同的大小,并缩小框内的文本,使其对齐.你还需要设置边框,因为Chrome有一个非常奇怪的边框,它用于选择框,这会抛出对齐.这适用于HTML5网站(例如支持IE9,Firefox,Chrome,Safari,Opera等).
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
input, select {
width: 200px;
border: 1px solid #000;
padding: 0;
margin: 0;
height: 22px;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
input …
Run Code Online (Sandbox Code Playgroud) 我有一个包含TextBox
C#的表单,我将其设置为字符串,如下所示:
textBox.Text = str;
Run Code Online (Sandbox Code Playgroud)
显示表单时,为什么texbox中的文本会突出显示/选中?