我試圖在運行時將單選按鈕添加到按鈕組。這是我的HTML:在運行時向JQuery按鈕組添加單選按鈕
<form>
<div id="container">
<input type="radio" id="radio1" name="tipo" value="1"/>
<label for="radio1">Alt1</label>
<input type="radio" id="radio2" name="tipo" value="2"/>
<label for="radio2">Alt2</label>
</div>
</form>
,這是我的javascript:
$(function() {
$("#container").buttonset();
$("#container").append("<input type='radio' id='radio3' name='tipo' value='3'/><label for='radio3'>Alt3</label>");
$("#container").buttonset();
})
這表明ALT1和ALT2在jQueryUI的皮膚。 Alt3顯示爲普通單選按鈕。如果我註釋掉第一個按鈕組像這樣它的工作原理:
$(function() {
//$("#container").buttonset();
$("#container").append("<input type='radio' id='radio3' name='tipo' value='3'/><label for='radio3'>Alt3</label>");
$("#container").buttonset();
})
看來,你只能設置buttonset一次。我在其他地方看過,你應該可以打電話:
$("#container").buttonset('refresh');
但是這對我不起作用。
有沒有人找到解決辦法?上面的代碼是我試圖做的簡化版本。我在運行時附加到容器,我希望單選按鈕顯示爲JQueryUI風格。上面的代碼被簡化以顯示問題是什麼。
你可以自己試一試這裏:http://jsfiddle.net/aembleton/vwemc/
看起來像它的工作(即時通訊使用鉻) – Neal 2011-05-17 15:34:32
我剛剛更新了網址http://jsfiddle.net/aembleton/vwemc/之前的一個是缺少第一個buttonset,這是它的工作原因。我在Chrome中測試過它,並且在那裏也崩潰了。 – Arthur 2011-05-17 15:38:23
我修好了。看到我的回答 – Neal 2011-05-17 15:42:08