2013-06-05 49 views
0

所以我試圖掃描美國駕駛執照到一個JavaScript瀏覽器應用程序(在GWT)。 許可證包含LineFeed字符,並且掃描器通過發送ctrl + J將其發送給主機。摩托羅拉DS9208控制字符替換

這對大多數瀏覽器不起作用,因爲ctrl + J是一個瀏覽器快捷方式,因此我的JavaScript從不接收事件。

顯然,您可以使用ADF(高級數據格式化)來進行字符替換,但是您無法使用控制字符來執行此操作,因爲在其配置工具中,用於指定要替換的字符串的UI元素是文本字段,並且不能將控制字符放入文本字​​段中。

我也嘗試使用嵌入式驅動程序許可證掃描編程,但是當我嘗試編程時,我的掃描儀總是發出錯誤的嘟嘟聲,所以我也卡在那裏。

有誰知道我該如何解決這個問題?我可以告訴瀏覽器關閉快捷方式嗎?我可以讓掃描儀進行控制字符替換嗎?

任何幫助,將不勝感激。

回答

1

因此,我正在研究類似的項目,到目前爲止,我發現可以使用jQuery至少阻止發送CTRL + J,CTRL + 6和CTRL + M控制字符。

$(document).keydown(function(event) { 
if((event.ctrlKey) && (event.which == 74)){ 
    event.preventDefault(); 
} else if((event.ctrlKey) && (event.which == 54)){ 
    event.preventDefault(); 
} else if((event.ctrlKey) && (event.which == 77)){ 
    event.preventDefault(); 
} 
}); 

我有這個工作在http://jsfiddle.net/n8felton/CTTmu。現在,左側的框接受輸入,右側的框顯示正在發送的控制字符。

如果您對此有任何進一步的瞭解,我很樂意知道。我目前正試圖找出如何將CTRL + J更改爲簡單的新行字符。

+0

對我來說很有魅力。將繼續尋找,如果我找到更完整的解決方案,請儘量記得回報。同時,感謝小提琴! –