我希望根据用户对Type of Event
的选择添加更多字段。
在不刷新页面的情况下,根据用户选择添加附加字段的最佳方法是什么?
当用户单击Add the details
并返回html时,我正在考虑ajax调用吗?
是否有一种方法可以使用带有一系列if/else条件的模板系统来做到这一点?
发布于 2014-11-30 03:20:53
这里有两个解决方案..。
1)
将jQuery更改处理程序附加到“事件类型”select元素,并执行ajax请求以返回需要显示的动态字段。
$('#TYPE_OF_EVENT_ID').change(function() {
$.get('/api/to/return/dynamic/fields/', {'type_of_event': $(this).val()}, function(data, textStatus, jqXHR) {
# Update DOM with dynamic content return by data (should probably be JSON)
});
});
2)
将逻辑直接编码到javascript中,以处理case语句,根据“事件类型”select元素中选择的值显示动态字段。
$('#TYPE_OF_EVENT_ID').change(function() {
switch($(this).val()) {
case 'Special Event':
# Show Special Event Fields
case 'Non Special Event':
# Show Non Special Event Fields
}
});
我建议选择1,因为它更好地保持服务器上的这个逻辑是由数据库驱动的。
https://stackoverflow.com/questions/27208135
复制相似问题