posts - 60,comments - 71,trackbacks - 0

                如果我們要取得所選中的單選按鈕中的值是很容易的事,如要取得下面單選按鈕中的:130000 或 160000,是件很容易的事,但要取得:aaaa 或 bbbb,
          且aaaa和bbbb是從數據庫中動態取得的,也就是說,單選按鈕組是動態生成的,然后頁面上點擊某個按鈕時,要獲取所選中的單選按鈕中的類似aaaa這樣的內容,這樣就比較難了,如下:

          <input type="radio" name="item" value="130000" onclick="update(this.value)">aaaa</input>
          <input type="radio" name="item" value="160000" onclick="update(this.value)">bbbb</input>

                經過本人的思考,想到了一種變通的辦法,即將從數據庫中動態獲取的內容賦給單選按鈕的title屬性,然后獲取的時候,循環單選按鈕組,獲取選中的單選按鈕的title屬性值,賦給一變量,這樣就得到了類似aaaa內容了,即取到了單選按鈕中顯示的內容.

               將從數據庫中獲取到的內容賦給title屬性

          <input type="radio" name="item" value="130000" onclick="update(this.value)" title='"+aaa+"'>aaaa</input>
          <input type="radio" name="item" value="160000" onclick="update(this.value)" title='"+bbbb+"'>bbbb</input>

          注:這里的單選按鈕組和通常的單選扭鈕組有些不同的地方
          1)是根據數據庫中獲取到的內容動態生成的;
          2)單選按鈕的value屬性值是數字,不是字符串,因為要根據當前某一單選按鈕的單擊事件,用當前單選按鈕的值(130000,數據庫表中某一字段的ID值)去從數據庫中獲取相關內容,生成下一個動態的單選按鈕組,否則的話,可以直接將從數據庫中獲取到的內容賦給value屬性.

          另:也許有人會說可以用select下拉列表來解決,就不用這么麻煩了,是的,本人最開始想到的也是用select來解決,但客戶有個變態的需求,也就是要顯示的aaaa,bbbb這樣的內容非常長,大約有一,二千的漢字,所以就沒用select下拉列表來顯示了,因為顯示不下,后來就想到用radio來解決了.
          posted on 2008-11-04 11:15 henry1451 閱讀(2531) 評論(9)  編輯  收藏

          FeedBack:
          # re: 取得單選按鈕中顯示的內容
          2008-11-04 20:30 | 昨夜流星

          如果使用radio的title,每當鼠標經過的時候就會顯示title的內容,這樣給人的感覺也是不好的,呵呵,其實我建議使用DOM取值:

           1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
           2<html xmlns="http://www.w3.org/1999/xhtml">
           3<head>
           4<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
           5<title>無標題文檔</title>
           6<script type="text/javascript">
           7    function onRadioClick(eleRadio){
           8        alert(eleRadio.nextSibling.nodeValue);
           9    }

          10
          </script>
          11</head>
          12
          13<body>
          14<form id="form1" name="form1" method="post" action="">
          15  <input type="radio" onclick="onRadioClick(this)" name="radio" id="radio" value="radio"/>
          16dfasdfsadfasdfasdfasdfasdfsadfsdfasdfsdfsdafsdfsadfadsfsadfsadfsdafsadfsadfsadfasdfasfsadfsadfsdaf
          17</form>
          18</body>
          19</html>
          20


           

            回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容[未登錄]
          2008-11-05 08:58 | henry1451
          @昨夜流星:
          呵呵,這個思路也不錯,用到了控件的 nextSibling 和 nodeValue 屬性,這樣取值也更方便些,不用去循環單選按鈕組了.  回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 09:46 | 昨夜流星
            回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 10:41 | ??
          呵呵,這樣干還不了解JavaScript ,給radio 定義一個屬性,比如<input type=radio extValue='aaaa'/> 以后,去它的值,就像去value的值一樣,啥叫動態弱類型,就是這個意思了  回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 10:42 | ??
          一樓的也有局限,如果radio 內部有復雜的html 你的辦法就失效了  回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 12:48 | Hafeyang
          我認為是這樣的:
          <label for="radio1">your label text</label>
          <input type="radio" id="radio1" />

          //jquery
          $("label[for= radio1]").text();  回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 13:12 | 昨夜流星
          @??
          要考慮一下瀏覽器兼容問題,這樣做IE下是可以,但是FireFox不支持!  回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容
          2008-11-05 13:21 | 昨夜流星
          來一個支持HTML標簽的:
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
           
          <html xmlns="http://www.w3.org/1999/xhtml">
           
          <head>
           
          <meta http-equiv="Content-Type" content="text/html; charset=GBK" />
           
          <title>無標題文檔</title>
           
          <script type="text/javascript">
               
          function onRadioClick(eleRadio){
                   alert(eleRadio.nextSibling.innerHTML);
               }

          </script>
          </head>

          <body>
          <form id="form1" name="form1" method="post" action="">
            
          <input type="radio" onclick="onRadioClick(this)" name="radio" id="radio" value="radio"/><span>
          dfasdfsadfasdfasdfasdfasdf
          <BR />sadfsdfasdfsdfsdafsdfsadf<font color="#FF0000">adsfsadfsadfsdafsadfsad</font>fsadfasdfasfsadfsadfsdaf
          </span>
          </form>
          </body>
          </html>
            回復  更多評論
            
          # re: 取得單選按鈕中顯示的內容[未登錄]
          2008-11-05 15:23 | henry1451
          謝謝大家的回復,讓我在這個問題上有了更廣闊的思路!  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 山西省| 德清县| 缙云县| 晋中市| 富源县| 共和县| 麟游县| 西畴县| 巫山县| 罗平县| 连州市| 平乐县| 色达县| 寿宁县| 日照市| 濮阳县| 武平县| 思茅市| 定结县| 卢龙县| 凤冈县| 新竹县| 武平县| 阳西县| 玉溪市| 天峻县| 东辽县| 即墨市| 吉水县| 措美县| 正宁县| 定边县| 江城| 山西省| 台东县| 司法| 炉霍县| 布拖县| 安宁市| 英山县| 建湖县|