2010-06-16 178 views
2

我有這樣的代碼複製 - 粘貼在JavaScript

<input name="mpan[]" value="" maxlength="2" size="2"> 
<input name="mpan[]" value="" maxlength="2" size="3"> 
<input name="mpan[]" value="" maxlength="2" size="3"> 
<input name="mpan[]" value="" maxlength="2" size="12"> 

我要做的就是我提供了例如0380112129021大關鍵。當我在該鍵上按Ctrl + C並選擇任意一個框並按下Ctrl + V時,該數字會自動粘貼到不同的框中,例如:第一個輸入框獲取03,接下來獲取801,接下來獲取112,最後獲得粘貼一個129021 .how我從javascript中完成了這項工作

+0

那麼,你的問題是什麼? – 2010-06-16 18:45:54

+0

@ rlb.usa:我想如何在JS中實現這一點。 – BalusC 2010-06-16 18:46:52

+0

它需要按Ctrl + C和Ctrl + V嗎? – 2010-06-16 18:47:40

回答

0

簡單。在每個輸入框中,添加一個onkeyup處理程序並檢查輸入值。

小小的澄清,你試圖做一些像串行/鍵輸入框,對吧?

+0

如果用戶使用右鍵單擊>粘貼粘貼內容怎麼辦? – 2010-06-16 18:55:01

+0

通過使用onmouseup?他/他可以爲不同的事件使用相同的功能。 – Christian 2010-06-16 19:06:01

+0

還有從編輯菜單粘貼,以考慮,或通過拖動。 – 2010-06-16 23:11:46

0

好吧,如果你不知道你應該通讀一些東西。

我可以推薦閱讀有關

  • 的JavaScript - 事件。
  • 特別是具有了的onkeyup /事件的onkeydown
  • stringparsing(子)

後,你將看到答案發光屏幕;-)

一個小提示上:如果要存儲按鍵到一個變量,它應該在動作被觸發後清除。你應該檢查你有什麼按鍵緩存並清除非法輸入。

1

如果你正在尋找捕捉粘貼事件(而不是字面按Ctrl +V),該onpaste事件可能是你,並通過根據this answer大多數瀏覽器都支持。

您可以使用substring()分割輸入值。

+0

他也將不得不從粘貼中獲取數據 - 換句話說,剪貼板的內容。據我所知,這似乎並沒有跨瀏覽器標準化。 – Pointy 2010-06-16 19:09:48