jQuery動(dòng)態(tài)添加表格時(shí),發(fā)現(xiàn)OPTION丟失的情況,具體代碼如下。
var selectTr = " |
";rn這是在組建select標(biāo)簽,其中selectOptions參數(shù)是組建好了的,用Alert彈出來就是...rn但是通過 $("#表格ID").append(selectTr);添加了之后.rn彈出alert( $("#表格ID")..html())的內(nèi)容的時(shí)候就變成了rnrnrnrn rn | rn
rn
rn也就是說用了append方法過后,selectTr里面的option標(biāo)簽消失了,rn同樣的添加了一個(gè)文本框rnvar textTr = " |
";rn直接添加不上,求各位大大幫幫忙,感激不禁rn表格里面沒有任何東西,就是你用jquery的話,append是需要加jquery對象的,你的selectTr明顯就是一個(gè)字符串,可以改寫成如下兩種方法:
1、var selectTr = $"(這里寫你的字符串");
2、document.getElementById("表格id").innerHTML = "這里寫你的字符串";
jquery 動(dòng)態(tài)添加選項(xiàng)問題?請大俠們指教!!
這出題目模板,默認(rèn)題目選項(xiàng)只有四個(gè)。當(dāng)選項(xiàng)不夠的時(shí)候,點(diǎn)擊"增加選項(xiàng)"按鈕,可以動(dòng)態(tài)的去生成一個(gè)選項(xiàng);當(dāng)題目不夠時(shí),點(diǎn)擊”增加題目“,可以動(dòng)態(tài)生成一個(gè)題目,生成的題目也是默認(rèn)只有四個(gè)選項(xiàng),還要求生成的題目可以動(dòng)態(tài)”增加選項(xiàng)“。rnrnrn rn rn rn rn rn
rn下面是復(fù)制題目、選項(xiàng)。后面復(fù)制的題目點(diǎn)擊增加選項(xiàng)時(shí),都添加到默認(rèn)的那個(gè)題目上了。而且點(diǎn)擊增加題目時(shí),把默認(rèn)題目添加的選項(xiàng)一起復(fù)制了。很糾結(jié),請高手指教rnrnfunction add(type){//增加選項(xiàng)rn var i=5;rn $(x27#addOptionx27).click(function(){ //克隆rn if(type==x271x27){rn var $div = $("#single")rn $(x27x27+i+x27:
x27).append(x27x27).appendTo($div);rn }else if(type=="2"){rn var $div = $("#choose")rn $(x27x27+i+x27:
x27).append(x27x27).appendTo($div);rn }rn i++;rn })rn }rn rn function addQuestion(){//增加題目rn rn $(x27#addQuestionx27).click(function(){rn $(x27#submitx27).before($(x27#liangbiaox27).clone());rn })rn }太亂了,不是很理解啊。
你再貼個(gè)效果圖,給點(diǎn)圖片什么的吧,不知道要干嘛。
選項(xiàng)怎么是input的?
幫你改好了,不過得改一處
在html最上面,追加一個(gè)class= “question”,其他要改變的你自由發(fā)揮吧
<div id="liangbiao" class="liangbiao questions">
<div id="type">
題目類型:
......
</div>
<script>
$(function () {
$('#addOption').click(function () {//增加選項(xiàng)
var $curr = $(this).parent().parent().prev();
var $div = $curr.find("#single");
var name, val, id;
switch ($curr.find('input[name="liangBiaoQuestionDTO\.options"]:checked').val()) {
case "1": $div = $curr.find("#single"); break;
case "2": $div = $curr.find("#choose"); break;
case "3": return false; break;
}
name = $div.find("input:first").attr("name"); //與原答案類名保持一致
val = $div.find("input:first").val();
id = parseInt($div.find("p:last").text().replace(":", "")) + 1;
for (var i = id; i <= (id + 5) ; i++) { //序號遞增
$('<p>' + i + ':</p>').append('<input type="text" name="' + name + '" value="' + val + '" />').appendTo($div);
}
})
$('#addQuestion').click(function () { //增加題目
var o = $('.questions:last').clone();// 克隆最后一個(gè)題目,下面進(jìn)行改造
var h = o.find('input[type="text"]').map(function () { // 改造內(nèi)部結(jié)構(gòu),避免后臺讀取沖突
var n = $(this).attr("name").replace("options", "");
$(this).attr("name", "options" + (parseInt(n == "" ? 0 : n) + 2));// 新增答案類名,避免與前面答案沖突,造成后臺讀取錯(cuò)誤
return this;
});
h.parent().parent().parent().insertBefore($("#submit"));
})
});
</script>
就是,看你這個(gè)代碼好老火哦,你想弄什么效果呢?
關(guān)于OPTION用JQUERY操作問題
請問如何在option里面追加一個(gè)屬性叫selected="selected"我用attr(x27selectedx27,x27selectedx27)設(shè)置很多次用FIREBUG都看不到這個(gè)屬性顯示,但是我attr(x27abcx27,x27abcx27) ,OPTION就出現(xiàn)了rn是不是因?yàn)殛P(guān)鍵字的問題無法追加呢?我確實(shí)一定要追加怎么辦呢?jquery 對select不支持這樣的寫法。
如果你是想設(shè)置某項(xiàng)選中有下面三種方法:
1. $("#selectID").get(0).selectedIndex=index;//index為索引值
2. 如<option value='opValue'/>
$("#selectID").val("opValue");
3. $("#selectID").get(0).value = value;//value為option值
如果你想獲取選中的option的value值的話那么
$("#selectID").val();就可以得到了。
如果你是想追加且選中。那你就先append然后再設(shè)置選中用上面的三個(gè)方法設(shè)置就行了。
大選框復(fù)選框是$("#chk2").attr("checked",true);//打勾
select 就不能這樣寫了
//設(shè)置select中值為value的項(xiàng)為選中
jQuery.fn.setSelectedValue = function(value){
jQuery(this).get(0).value = value;
}
看我空間里的吧,jquery操作select大全
http://hi.baidu.com/xjlone/blog/item/fbe4783181c89710ebc4afaa.html
用jquery去設(shè)置option的selected值
試了3 種方式去設(shè)置 都不行 到底是哪里出了問題
你方式不正確 你那個(gè)是賦值,你把代碼貼出來 還有 你需要循環(huán)獲取每個(gè)option才能改selected ,
<select id="sel">
<option value="一類">一類</option>
<option value="二類">二類</option>
<option value="三類">三類</option>
</select>
<script>
$("#sel option").each(function() {
if($(this).val()=='二類'){
$(this).prop('selected',true);
}
});
</script>
操作步驟:
設(shè)置value為pxx的項(xiàng)選中
“$(".selector").val("pxx")”。
設(shè)置text為pxx的項(xiàng)選中
“$(".selector").find("option[text='pxx']").attr("selected",true)”。
3、獲取當(dāng)前選中項(xiàng)的value“$(".selector").val()”。
4、獲取當(dāng)前選中項(xiàng)的text“$(".selector").find("option:selected").text()”。
jQuery我想向select中添加一個(gè)option,我這種方法有問題,求大神幫忙
rnrn1.alert($("#sel").append("").html(0).val(0));rnrn2.alert($("").html(1).val(1).appendTo("#sel"));rn為什么第一種不可以,第二種可以呢,思路不是都一樣嗎因?yàn)榈谝环N方法,你添加的不是jQuery結(jié)點(diǎn),所以jQuery無法識別,換成
alert($("#sel").append($("<option/>")).html(0).val(0));應(yīng)該就可以了
alert($("#sel").append("<option/>").find('option:last-child').html(0).val(0))
第一個(gè)因?yàn)閍ppend的返回值是select,所以html(0)是對select操作的。
應(yīng)該把插入的option找出來,這里應(yīng)該是last-child
相關(guān)推薦:
非法融資的有那些(非法融資的類型)
規(guī)范立案登記(受案和立案登記制度)
公司上市要具備什么(公司上市需要滿足的條件有哪些)
關(guān)于企業(yè)倒閉的原因(破產(chǎn)原因有)
有家庭暴力怎么判離婚(男的家暴女的離婚怎么判)