一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - asp.net textbox javascript實現enter與ctrl+enter互換 文本框發送消息與換行(類似于QQ)

asp.net textbox javascript實現enter與ctrl+enter互換 文本框發送消息與換行(類似于QQ)

2019-09-27 09:49asp.net技術網 ASP.NET教程

今天與大家分享一下 asp.net textbox javascript實現enter與ctrl+enter互換 文本框發送消息與換行(類似于QQ),這個功能到底怎么實現?首先聲明以下幾點

1、也許講解有點初級,希望高手不要“噴”我,因為我知道并不是每一個人都是高手,我也怕高手們說我裝13; 
2、如有什么不對的地方,還希望大家指出,一定虛心學習,如果有更好的辦法請告訴我一聲哦; 
3、本文屬于作者原創,尊重他人勞動成果,轉載請注明作者,謝謝。 
下面開講: 
  如題,這個功能也困擾了我一兩天事件了,我也上網找了很多資料,但是網上大部分的說法都差不多,問題始終還是沒解決,于是乎我開始找是問題的根源,我開始用的是文本框的onkeydown事件,分別寫了兩個js函數,如下: 

復制代碼代碼如下:


//enter發送 
function IsEnter(evt) 

if(window.event.keyCode ==13) 

send(); 
return false; 


//ctrl+enter發送 
function IsEnterAndCtrl() 

if(window.event.keyCode ==13 && window.event.ctrlKey) 

send(); 
return false; 


然后我就用文本框的onkeydown事件來調用這兩個函數,可以一直效果不出來,我就調試,發現event永遠都是undefined,我無語了,然后我就換方法了,我把onkeydown函數里面加了一個event參數,在IsEnter(evt)里面也定義了一下var obj = window.event ? evt.keyCode : evt.which;//window.event是針對IE,evt.keyCode是針對FF,這樣這個問題就解決了,就不會出現undefined錯誤了。 
  接下來問題又來了,我發現onkeydown事件只要你按鍵盤上的任意鍵就會觸發這個事件,那么就無法實現ctrl和enter同時按了,又是一個糾結的問題啊,還有我們有onkeydown事件就有onkeyup事件,接下來我就把onkeydown事件換成了onkeyup事件了,這樣問題就解決了。 
  好了,問題是越解決越少了,下面要做到是如何做到enter與ctrl+enter切換實現是換行還是發送消息?為了兼容性,我又定義了一個變量 var e = evt || window.event;我就是通過obj與e來實現換行與發送切換的,詳細js代碼如下: 

復制代碼代碼如下:


//enter or ctrl+enter發送 
function IsEnter(evt) 

var obj = window.event ? evt.keyCode : evt.which; 
var e = evt || window.event; 
var type = document.getElementById("sendtype"); 
var txt = document.getElementById("txtcontent"); 
if(type.innerHTML=="[Enter發送消息]") 

if(obj ==13 && !(e.ctrlKey)) 

send(); 
e.returnValue = false; 
txt.value=""; 
return false; 

if(e.ctrlKey && e.keyCode==13) 

txt.value +="\n"; 


else 

if(e.ctrlKey && e.keyCode==13) 

send(); 
return false; 



注意:以上代碼我都已經在IE6、IE8、FF里測試過,絕對有用,由于按enter發送消息的時候會與換行沖突,所以我用e.returnValue = false;txt.value="";不知道有沒有更好的方法?

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 女烈受刑重口小说 | 国产精品福利一区二区亚瑟 | 久久国产综合精品欧美 | 任你操视频在线观看 | 久久嫩草影院网站 | 好舒服好爽再快点视频 | 色偷偷91久久综合噜噜噜 | 好大好爽好涨太深了小喜 | 久久综合亚洲色hezyo | 日韩一区二区中文字幕 | 国产成人手机在线 | 日本不卡免费新一二三区 | 日韩精品久久不卡中文字幕 | 我和子伦系列小说 | 免费午夜影片在线观看影院 | 欧美日韩在线一区二区三区 | 偷偷狠狠的日日高清完整视频 | tobu8中国在线观看免费视频 | www视频免费 | 久久性综合亚洲精品电影网 | 男女视频在线观看 | 四虎在线网址 | 欧美伊香蕉久久综合类网站 | 欧美成人中文字幕在线看 | 久久精品热在线观看30 | 亚洲精品老司机福利在线播放 | 日韩精品免费一级视频 | 黑人巨茎大战欧美白妇 | 青草精品| 成人小视频在线免费观看 | 国产伦码精品一区二区 | 手机在线观看网站免费视频 | 朝鲜女人性猛交 | 日产乱码卡1卡2卡三卡四在线 | 亚洲成aⅴ人片在线 | 九九九九九九 | 全色黄大色黄大片爽一次 | 欧美日本一道高清免费3区 欧美人做人爱a全程免费 | 日本一区二区三区在线 观看网站 | 女人把扒开给男人爽的 | 欧美成人影院免费观 |