输入法切换不成功的问题
我用.net+C#编写的系统里,textbox和textarea控件有时只能输入英文,按ctrl+Shift或ctrl+Space时,右下角的输入法图标会切换,但输入法面板没有显示,输入的也是英文,请问这是什么原因啊?这个问题有时出现有时不出现。 --------------------编程问答-------------------- 我遇到同样的问题?找高手解答 --------------------编程问答-------------------- 那是你电脑问题吧。。和你做的系统没关。 --------------------编程问答--------------------放出去给客户测试也存在这个问题,拼音,其它种类的五笔,反正除了英文可以大小写切换之外,其它什么输入法输入的都变英文 --------------------编程问答-------------------- 不会吧,没遇到过类似问题,重新弄各控件再试试 --------------------编程问答-------------------- 是这样的,
前台:
<asp:TextBox ID="txt_MasterItemNo" runat="server" OnBlur=" return GetAutoItemNo(this)"
CssClass="TxtShowAuto" Width="120px" TabIndex="10"></asp:TextBox>
javascript:
function GetAutoItemNo(Control)
{
if(Control.value!="")
{
document.getElementById("<%=btn_AutoItemNo.ClientID %>").click();
}else
{
document.getElementById("<%=txt_MasterItemNo.ClientID %>").select();
}
}
后台:
protected void btn_AutoItemNo_Click(object sender, EventArgs e)
{
if (txt_MasterItemNo.Text.Trim().Length > 0)
{
DataTable dt = mBll.GetMaterial(txt_MasterItemNo.Text.Trim());
if (dt != null && dt.Rows.Count > 0)
{
if (mBll.JudgmentBomForNull(txt_MasterItemNo.Text.Trim()))
{
MsgShow("空BOM不能建ECN!");
txt_MasterItemNo.Focus();
return;
}
txt_OldRev.Text = dt.Rows[0]["BomVersion"].ToString();
txt_Description.Text = dt.Rows[0]["Description"].ToString();
MasterItem = dt.Rows[0]["ItemID"].ToString();
txt_Rev.Text = (Convert.ToInt32(dt.Rows[0]["BomVersion"]) + 1).ToString();
txt_ChangeReasons.Focus();
}
else
{
MsgShow("货品编码不存在!");
txt_MasterItemNo.Focus();
return;
}
}
else
{
txt_MasterItemNo.Focus();
return;
}
} --------------------编程问答-------------------- 现在找到了一条不是很好的办法就是如下
直接修改后台调用JS
protected void btn_AutoItemNo_Click(object sender, EventArgs e)
{
if (txt_MasterItemNo.Text.Trim().Length > 0)
{
DataTable dt = mBll.GetMaterial(txt_MasterItemNo.Text.Trim());
if (dt != null && dt.Rows.Count > 0)
{
if (mBll.JudgmentBomForNull(txt_MasterItemNo.Text.Trim()))
{
MsgShow("空BOM不能作ECN!");
txt_MasterItemNo.Focus();
return;
}
txt_OldRev.Text = dt.Rows[0]["BomVersion"].ToString();
txt_Description.Text = dt.Rows[0]["Description"].ToString();
MasterItem = dt.Rows[0]["ItemID"].ToString();
txt_Rev.Text = (Convert.ToInt32(dt.Rows[0]["BomVersion"]) + 1).ToString();
string SetFocus = @"<script>SetFocus()</script>";
ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "SetFocus", SetFocus, false);
}
else
{
MsgShow("货品编码不存在!");
txt_MasterItemNo.Focus();
return;
}
}
else
{
txt_MasterItemNo.Focus();
return;
}
}
补充:.NET技术 , ASP.NET