看板 Web_Design 關於我們 聯絡資訊
※ 引述《andreli (第一次賭P幣就沒錢)》之銘言: : 因為我對JavaScript真的不怎麼熟,只會改改東西 : 所以用了一兩個小時,拜託了很久的辜狗大神,還是沒有辦法找到我要的東西 : 只好來拜託大家了。 : 我現在有兩個文字欄位,name分別為num1、num2都位於同個表單中 : 想讓num1+num2永遠都等於100 : 所以我在更改num1的時候,一但focusOut或者MouseOut的時候, : num2會直接成為100-num1的值。 : 自己想起來很像很簡單,可是沒有JavaScript的基礎不知道怎麼動手 : 希望知道的人可以給我個範例教一下 : (這裡所謂的即時還不用到類似ajax那樣,我先打個2另一個會出現98,接著補成 : 25另一個會變成75。我只想先用用看簡單的,離開欄位才進行確認及變更 ^ ^a : 不過如果會即時的樣子的話更好,謝謝指導。) 我的解法是用javascript的onChange 這個事件^ ^ <script language="JavaScript"> function change_event(){ var source = window.event.srcElement; if(source.name=="text1"){ var num1 = source.value; var num2_obj=document.getElementById("text2"); num2_obj.value= 100 - num1; }else if(name=="text2"){ var num2=source.value; var num1_obj=document.getElementById("text1"); num1_obj.value=100- num2; } } </script> <body> <input type="text" name="text1" onChange="change_event()"> <input type="text" name="text2" onChange="change_event()"> </body> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.138.240.58
abgne:既然用getElementById()那應該就要在input中設個id吧.. 03/25 02:14
TonyQ:用name也是抓的到啊@.@ 為甚麼要用id.. 03/25 02:17
TonyQ:我看這裡是說name有W3C而id沒有..http://0rz.net/fd19H 03/25 02:17
abgne:另外else if(name="text2")少了一個= :$ 03/25 02:18
abgne:用name抓的到...這是IE的錯啊... 03/25 02:19
abgne:你不信的話 可以自己放兩個text 一個只給name 一個只給id 03/25 02:27
abgne:但是name跟id都取一樣的 在用getElementById()去取值. 03/25 02:28
abgne:別在把錯的觀念 但在IE上可以執行 就當然是對的... 03/25 02:29
TonyQ:ok 學藝不精 見笑了~~ :) 03/25 02:58
※ 編輯: TonyQ 來自: 140.138.240.58 (03/25 02:59)
andreli:感謝,我試試看。 03/25 07:41