在我的 Rails 3.2 应用程序中,我有一个类似于相册页面的内容,其中显示了许多照片。每张照片下方都有一个选择框,用户可以从多个选项中进行选择,格式如下:
<select id="photo_1">
<option value=value_1>Name of Value 1</option>
...
<option value=value_n>Name of Value N</option>
</select>
问题是,值列表非常长(有数百种可能性),但每张照片都完全相同。由于每个相册可能有数十张照片,因此每次将照片加载到页面时让服务器发送完整列表似乎效率不高。有没有更有效的方法来做到这一点,例如加载
<option value=value_1>Name of Value 1</option>
...
<option value=value_n>Name of Value N</option>
在生成相册页面时只需访问一次(可能作为隐藏字段),然后在照片加载到页面时使用 jQuery/javascript 将其填充到客户端照片的唯一标签中? (注意:照片是动态加载的,因此有些照片可能会在用户上传照片时在相册页面初始加载后加载。)
最佳答案
如果<select>
会更好需要这个的有一个公共(public)类,但这适用于任何 <select>
ID以 photo
开头(尽管您可能应该使用 name
而不是 id
)。
$(function () {
$("select[id^=photo]").each(function () {
$(this).html($("#hidden_select").html());
});
});
关于javascript - 加载选项列表一次并将其渲染到客户端的多个选择框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13144396/