JS動(dòng)態(tài)添加選項(xiàng)案例分析
本文實(shí)例分析了JS動(dòng)態(tài)添加選項(xiàng)的方法。分享給大家供大家參考,具體如下:
一、問(wèn)題:
要做一個(gè)調(diào)查問(wèn)卷,問(wèn)題數(shù)量不定,問(wèn)答答案不定。

JS控答案效果圖
二、實(shí)現(xiàn)方法:
為了實(shí)現(xiàn)這個(gè)效果,點(diǎn)擊那個(gè)按鈕就在下面添加4個(gè)答案框,選擇從A-Z這26個(gè)字母,就是為了ASSIC碼方便處理
看看HTML結(jié)果
<table width="100%" class="form">
<tr>
<th width="100px"><label>標(biāo)題1:</label></th>
<td align="left"><input type="text" class="large" id="title" name="title" /> <span class="error">請(qǐng)輸入標(biāo)題</span></td>
</tr>
<tr>
<th width="100px"><label>選擇類型:</label></th>
<td align="left">
<input type="radio" name="radio" />單選
<input type="radio" name="boxcheck" />多選
<input type="radio" name="select" />下拉
</td>
</tr>
<tr>
<th width="100px"><label>答案:</label></th>
<td align="left">
<div>
<div style="float:left;" id="1">
A:<input type="text" class="mimi" name="A" />
B:<input type="text" class="mimi" name="B" />
C:<input type="text" class="mimi" name="C" />
D:<input type="text" class="mimi" name="D"/>
</div>
</div>
<div class="more" onclick="add_ask($(this))"> </div>
</td>
</tr>
</table>
通過(guò)這個(gè)上面這HTML結(jié)果,然后通過(guò)JS 實(shí)現(xiàn)
function add_ask($this)
{
var $Word ="";
//獲取前面div層數(shù)
var $div_num = $this.prev().children().attr("id");
//增加圖層
var $div_next_num = Number($div_num)+1;
var $last_children_name = $this.prev().children().last().children().last().attr("name").charCodeAt();
var $html = "<div style=\"float:left;\" id="+$div_next_num+">";
//進(jìn)行四次循環(huán)
if($last_children_name+4 <= 90)
{
for(var $i=1;$i<=4;$i++)
{
$Word = String.fromCharCode($last_children_name + $i);
$html += $Word+":<input type=\"text\" class=\"mimi\" name="+$Word+" />";
}
}else
{
$end = 90 - $last_children_name;
for(var $i=1;$i<=$end;$i++)
{
$Word = String.fromCharCode($last_children_name + $i);
$html += $Word+":<input type=\"text\" class=\"mimi\" name="+$Word+" />";
}
}
$html += "</div>";
$this.prev().append($html);
}
上面的JS 是通過(guò)jquery實(shí)現(xiàn),原理很簡(jiǎn)答,我就不說(shuō)太多了。
巧妙的地方就是通過(guò)assic碼數(shù)字轉(zhuǎn)換來(lái)實(shí)現(xiàn)選項(xiàng)增加。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript動(dòng)畫(huà)特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- JS動(dòng)態(tài)添加option和刪除option(附實(shí)例代碼)
- javascript實(shí)現(xiàn)的動(dòng)態(tài)添加表單元素input,button等(appendChild)
- js 動(dòng)態(tài)添加標(biāo)簽(新增一行,其實(shí)很簡(jiǎn)單,就是幾個(gè)函數(shù)的應(yīng)用)
- JS中動(dòng)態(tài)添加事件(綁定事件)的代碼
- JS動(dòng)態(tài)添加Table的TR,TD實(shí)現(xiàn)方法
- JS實(shí)現(xiàn)下拉框的動(dòng)態(tài)添加(附效果)
- Js實(shí)現(xiàn)動(dòng)態(tài)添加刪除Table行示例
- js下為表格內(nèi)部動(dòng)態(tài)添加行的代碼
- javascript動(dòng)態(tài)添加表格數(shù)據(jù)行(ASP后臺(tái)數(shù)據(jù)庫(kù)保存例子)
- javascript動(dòng)態(tài)添加、修改、刪除對(duì)象的屬性與方法詳解
- javascript 動(dòng)態(tài)添加表格行
- javascript 動(dòng)態(tài)添加事件代碼
相關(guān)文章
javascript對(duì)select標(biāo)簽的控制(option選項(xiàng)/select)
html中的select標(biāo)簽,也是asp.net中的asp:DropDownList控件,接下來(lái)介紹javascript對(duì)select標(biāo)簽的控制,感興趣的朋友可以了解下,或許本文對(duì)你有所幫助2013-01-01
JavaScript 數(shù)組循環(huán)引起的思考
Google array.js 程序中建議改進(jìn)的代碼。思考為什么i-- 到了 i為0時(shí)while循環(huán)結(jié)束了?2010-01-01
Js 回車換行處理的辦法及replace方法應(yīng)用
當(dāng)我們?cè)谖谋究蚶镙斎胛淖智孟禄剀嚭螅M谔峤缓缶W(wǎng)頁(yè)也顯示是換行的效果,可往往并不能如愿以償啊,實(shí)在是憤怒啊自己寫(xiě)了一個(gè)回車換行處理的函數(shù),感興趣的朋友可以了解下啊,希望本文對(duì)你有所幫助2013-01-01
快速解決layui彈窗按enter鍵不停彈窗的問(wèn)題
今天小編就為大家分享一篇快速解決layui彈窗按enter鍵不停彈窗的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
基于JavaScript實(shí)現(xiàn)可搜索的表格
在Web開(kāi)發(fā)中,數(shù)據(jù)表格是常見(jiàn)的數(shù)據(jù)展示形式,這篇文章主要為大家詳細(xì)介紹了如何使用JavaScript來(lái)實(shí)現(xiàn)這個(gè)功能,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01
javascript中的變量作用域以及變量提升詳細(xì)介紹
在javascript中, 理解變量的作用域以及變量提升是非常有必要的。這個(gè)看起來(lái)是否很簡(jiǎn)單,但其實(shí)并不是你想的那樣,還要一些重要的細(xì)節(jié)你需要理解2013-10-10

