问题:用户在文本框输入后按回车就触发一个按钮事件。。我这个web form项目在PC和Windows Mobile 都用兼容。。js在WM中是没有用的。。故大侠不要告诉我用js实现。
我后来又用了OnTextChanged事件。客户说光标离开了就触发也不行,必须是按WM上的Enter才能触发。。

解决方案 »

  1.   

    WM不熟悉。不能用js?那有没有onkeypress类似的事件?如果都没有,就只能是ontextchange了。web form不是win form想为所欲为,那只能让客户找微软理论了:)
      

  2.   


    首先非常感谢你的回答onkeypress在webform中是没有的。。我现在是用ontextchange事件,但光标离开就触发了。客户接受不了。。
      

  3.   

    web是受限的平台,或许你用flash可以间接实现。
      

  4.   

    现在还有Windows Mobile 系统,你确定还是Windows Phone??
      

  5.   

    确定是Windows Mobile搞得想死的心都有了,什么东西在里面都不兼容
      

  6.   

    文本框设置为多行文本,TextMode="MultiLine"  MaxLength="20"无效果。不能用js。
    大侠有什么方式能实现的?。
      

  7.   

    我在CSDN发的贴都没尝试过解决问题。,。。谁要帮我解决了我把全部积分给他(1000分)
      

  8.   

     用 onkeypress:
     <asp:TextBox ID="txtPwd" onkeypress="return EnterWarningKeyDownConfig()" runat="server" TextMode="Password"></asp:TextBox> function EnterWarningKeyDownConfig() {
                var txtPwd = document.getElementById("txtPwd");
                if (event.keyCode == 13) {
                    var pwdValue = txtPwd.value;
                    if (pwdValue == "landpower" || pwdValue == "123456") {
                        window.location.href ="Login.aspx";
                    } else { alert('密码错误,请重新输入!'); }
                    return false;
                }
            }
      

  9.   

    Windows Mobile 是ie5 envent 都不支持的。。
      

  10.   

    PC版IE4的event就十分强大了。onkeypress和onchange其实都是js的事件的。WM如果不支持js,那你的功能是没有可能实现的。赶紧结题吧。至于:TextMode="MultiLine"  MaxLength="20",这些最终都是为了生成HTML的textarea,所以,你要检查一下最终生成的HTML是否达标。
      

  11.   

    并且,友情提醒一下,asp.net服务器端的事件,其实都是对客户端js的事件的包装!所以,如果对应的js事件都没有,asp.net就只能处理最原始的HTTP的form的submit提交,通过得到是哪个按钮触发的提交从而激发按钮的Click事件,通过文件框值的改变触发Change事件,通过下拉框选项的改变触发OnSelectedChange事件。所以,如果js做不到,服务器最多就只能处理值的变化!我检查了IE Mobile的MSDN关于文本框的标准事件只有:OnBlur, OnFocus, OnChange,也就是说IEM不支持按键事件,你的需求在IEM上是无解的!你只能通过OnBlur写脚本在离开焦点时检查回车。多行文本框是否能正确显示的前提是:
    (1)浏览器是否支持多行文本框
    (2)asp.net的TextBox控件会针对每种浏览器,生成不同的HTML标签。当前asp.net是否支持了该IEM?IE Mobile和IE是两种完全不同的浏览器!
    我检查了http://msdn.microsoft.com/en-us/library/bb415522.aspx,IEM是有textarea的,那么asp.net是否针对该浏览器生成了对应的标签,这个要么查看asp.net的msdn说明,要么直接以测试结果为准(这个最精确了)并且我看到了一点特别的地方,IEM要求是XHTML!你的HTML的doctype是否设置了XHTML?