作者TonyQ (沉默是金。)
看板Ajax
标题Re: [问题] javascript 动态新增下拉式选单
时间Thu May 20 17:38:00 2010
※ 引述《sss5 (Ryan)》之铭言:
: 是这样的… 程式码如下
: 可以让使用者新增多个 选单栏位
: 然後我要抓每个栏位的id 跟值
: 如果用下来的方式,可以清楚的分办每个id (Lang1 ,Lang2 ...)
: 但我想加入资料库里,所以要用阵列方式
: 除了要在<select name="Lang" id="Lang"> 改lang[] 外
: 在js上要怎样修改
: 让 getElementsByTagName("select").Lang.id 抓到原先的选单
: 对js还不太熟,尚在摸索
: 谢谢回答
: <select name="Lang" id="Lang">
: <option value="1">1</option>
: <option value="2">2</option>
: <option value="3">3</option>
: </select>
: <input type="submit" name="button" id="button" value="送出" onclick="abc()" />
先确认一下,你的submit这个onclick是要干嘛用的?
是每个lang会有一个还是整个form有很多个lang只有一个按钮?
另外你可以在insert进来的时候送你是第几个lang, (假设是 ind )
因为getElementsByTagName很容易被其他select影响到,
我会建议你用 document.getElementsByName("Lang[]")[ind] 的方式来存取。
当然这一切还是要看你的lang打算修成什麽样的阵列才知道後续。
: <SCRIPT language="javascript">
: var row = 1;
: function insert(){
: row++;
: newInput=document.getElementById('copyTable').cloneNode(true); //复制元素
: newInput.getElementsByTagName("select").Lang.id="Lang" + row; //更改元素中文字栏位内容 id
: newInput.getElementsByTagName("select").Lang.value="Lang" + row; //更改元素中文字栏位内容 value
: newInput.getElementsByTagName("select").Lang.name="Lang" + row;//更改元素中文字栏位内容 name
: document.getElementById('copyTable').parentNode.insertBefore(newInput,null);
: }
: function abc(){
: var testa=document.getElementById('test').value;
: alert(document.getElementById("Lang" + testa).name);
: }
: </SCRIPT>
: </BODY>
--
▄▅▆▇███▇▆▅▄▃ ╰┼╯─╮ ╮
◥███████████◣ ╰┼╯=│=│
◥██████───────◣ *. ╯ ╯ ╯ の 物 语 .*
◥███████──────◣ ~ ◢◣ ◢◣
◥██████───────◤ ◥◤* 空白的世界.翼
*◥◤
◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂
~telnet://tony1223.twbbs.org
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.34.160.41
※ 编辑: TonyQ 来自: 114.34.160.41 (05/20 17:38)
1F:推 sss5:submit的onclick是用来确认每个select的name,先试试。谢谢! 05/21 08:52