jquery模板选择

时间:2011-08-09 22:49:15

标签: javascript jquery jquery-templates

我有一个带有N个单选按钮的jquery模板,我需要选择带有从外部html文件加载模板后传递的值的单选按钮(使用jQuery.tmpl()方法)。在没有多个{{if}},{{else}}语句,重复代码和选择器的情况下,是否有一种在模板中选择单选按钮的好方法?

2 个答案:

答案 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');

http://jsfiddle.net/JbTwB/1/

答案 1 :(得分:1)

如果您拥有所需收音机的价值,您可以执行以下操作:

jInstance.find('input[value=' + desiredValue + ']').attr('checked', true);

这假设jInstance是新创建的模板副本,desiredValue与您要预先选择的单选按钮的值完全匹配。

如果您只知道该部分值,则可以使用其他jQuery选择器来定位该输入。

如果您正在寻找更通用的“表格预填充”例程,则需要建立某种格式来存储预填充值集,以及从该格式到模板的映射。但它可以做到,而且也不一定那么难。