我有一个带有N个单选按钮的jquery模板,我需要选择带有从外部html文件加载模板后传递的值的单选按钮(使用jQuery.tmpl()方法)。在没有多个{{if}},{{else}}语句,重复代码和选择器的情况下,是否有一种在模板中选择单选按钮的好方法?
答案 0 :(得分:3)
您的数据以何种格式从服务器返回?如果它是一个JSON数组,你可以这样做吗?
HTML:
<script id="myTemplate" type="text/html">
<input type="radio" value="${value}"{{if selected}} checked{{/if}}>${name}</input><br />
</script>
<div id="myDiv">
</div>
的javascript:
var myData = [
{name: 'test 1', value : 'radio1', selected : false},
{name: 'test 2', value : 'radio2', selected : false},
{name: 'test 3', value : 'radio3', selected : true},
{name: 'test 4', value : 'radio4', selected : false}
];
$('#myTemplate').tmpl(myData).appendTo('#myDiv');
答案 1 :(得分:1)
如果您拥有所需收音机的价值,您可以执行以下操作:
jInstance.find('input[value=' + desiredValue + ']').attr('checked', true);
这假设jInstance
是新创建的模板副本,desiredValue
与您要预先选择的单选按钮的值完全匹配。
如果您只知道该部分值,则可以使用其他jQuery选择器来定位该输入。
如果您正在寻找更通用的“表格预填充”例程,则需要建立某种格式来存储预填充值集,以及从该格式到模板的映射。但它可以做到,而且也不一定那么难。