0

我们有一个基于 System.Web.UI 的自定义 Web 控件的 dll。我被要求这样做,所以当用户按 Enter 键时,将触发 tab 事件。我已经这样做了:

Me.Attributes.Remove("onkeydown")
Me.Attributes.Add("onkeydown", "if(event.keyCode == 13) {event.keyCode = 9; return event.keyCode;}")
If Me.TextMode = Web.UI.WebControls.TextBoxMode.MultiLine Then
   Me.Attributes.Remove("onkeydown")
End If

但它只适用于IE。当我在 FF 和 Chrome 上测试它时,回车事件会生成回发。我尝试了其他解决方案:

<script type="text/javascript">
function catchEnter(e){
   var theKey=0;
   e=(window.event)?event:e;
   theKey=(e.keyCode)?e.keyCode:e.charCode;
   if(theKey=="13"){ // 13 is the key code for ENTER
      // here is where your code will go
      //return false; // return false if you want to...
      //...halt submission of form (call this function onsubmit)
   }
}
</script>



function checkKey(e) {
    var event = window.event ? window.event : e;
    if (true) {
        alert(event.keyCode)
    }
}

并且:

function displayunicode(e){
var unicode=e.keyCode? e.keyCode : e.charCode

但我必须使用 Attributes.Add 来插入 javascript。我可以使用 Attributes.Add 写下整个 javascript 函数吗?当我尝试使用这些功能时,我忽略了“脚本”标签,只放了 javascript 代码。我在这里做错了吗?

这些代码中的哪一个会起作用?(IE、FF 和 Chrome)

4

0 回答 0