【发布时间】:2013-03-12 22:41:04
【问题描述】:
我已经检查了这个链接Set radio button 'checked' in jquery based on ID 但是,似乎不太适合我。这是我的代码
<label for="basic" class="basic">Gender:</label>
<fieldset data-type="horizontal" data-role="controlgroup" data-mini="true">
<input type="radio" name="gender" id="radio-mini-1" value="Male" checked="checked" />
<label for="radio-mini-1">Male</label>
<input type="radio" name="gender" id="radio-mini-3" value="Female" />
<label for="radio-mini-3">Female</label>
</fieldset>
和
<label for="select-choice-min" class="select">Living Place:</label>
<select name="select-choice-min" id="livingPlace" data-mini="true">
<optgroup label="AAA">
<option value="123">123</option>
<option value="456">456</option>
</optgroup>
<optgroup label="BBB">
<option value="789">789</option>
<option value="246">246</option>
</optgroup>
</select>
请问如何设置默认值?谢谢。
我的 json 返回是这样的:
[{"data":{"id":"8","livingPlace":"789","gender":"Female"}}]
更新
对于生活的地方,我发现当我使用$("#livingPlace").val(data[0].data.livingPlace);时,它实际上可以获取选择器中的值,当我点击选择器时,它可以显示正确的值,但是,当页面加载时,没有点击选择器,它只显示选择器中的第一个值,即上例中的 123
$.getJSON('http://mydomain.com/getmyDetail.php?user_name='+localUsername+'&role='+localRole+'&jsoncallback=?', function(data) { // the javascripts are located here
$('#livingPlace').val(data[0].data.livingPlace).find('[value="' + data[0].data.livingPlace + '"]').attr('selected', 'selected');}
我是这样做的,有什么问题吗?
【问题讨论】:
-
当您说“设置默认值”时,您的意思是“设置选择了哪个单选按钮?您的代码
$("input[name=gender]:checked").val(data[0].data.gender)将设置已选择的单选按钮的value属性。 .. -
是的,但是从json字符串来看,性别应该是女性。我希望当打开表格时,它可以将性别设置为女性。实际上,我应该删除 html 中的 checked="checked" 吗?
标签: javascript jquery