Tôi gặp sự cố này với trang web của tôi (MVC3, C#) và trình đọc mã vạch. Ở dạng của tôi có một cái gì đó như thế này:Ngăn cửa sổ tải xuống mở bằng chrome với đầu đọc mã vạch
<ajax form....>
<input type=text />
<div id=list>
</div>
</form>
Và đầu vào được làm đầy với một đầu đọc mã vạch và sẽ tự động gửi các hình thức mà với ajax, lấp đầy div với id = danh sách. Vấn đề của tôi là với chrome và tức là, sau khi văn bản được gửi, một cửa sổ tải xuống xuất hiện trong chrome và cửa sổ yêu thích xuất hiện trong ví dụ. Tôi cho rằng đó là vì trình đọc mã vạch chèn [CR] [LF] vào văn bản và mở các cửa sổ đó. Tôi nghĩ rằng đầu đọc mã vạch đã chèn một ctrl-j trong một thời điểm vì kết hợp đó sẽ mở cửa sổ tải xuống trong chrome và các mục ưa thích, nhưng với firefox cửa sổ tải không mở (và cũng là ctrl-j).
Tôi không muốn nói với khách hàng của mình định cấu hình trình đọc mã vạch để trang của tôi hoạt động, vì vậy tôi muốn có một sollution trong javascript có thể khắc phục sự cố đó.
cảm ơn !!!
mã vạch của tôi chứa '-' mà keycode là 173 và nó chia màn hình vào chế độ cột duy nhất, Cảm ơn bạn @Felipe Almeida – Tiger
Nó cũng sẽ chặn sao chép dán lệnh Tôi đã thêm sửa chữa nhỏ để nó và nó sẽ chỉ khối ctrl + j var prevKey = ''; \t \t $ ("đầu vào"). KeyDown (function (e) { \t \t if (e.which == 74 && prevKey == '17') { \t \t console.log ('Ctrl + j occered'); \t \t e.preventDefault(); \t \t} \t \t \t if (e.which == 17) { \t \t \t prevKey = 17; \t \t} else { \t \t \t prevKey = ''; \t \t} \t \t \t}); –