所以我正在使用django,我有一个看起来像的页面/模板(仅简化为相关部分)
<select id="printerSelect" name="printer_id">
<option>Select Printer</option>
<option>printer1</option>
<option>printer2</option>
</select>
以后我有点像
<div id="printerInfo">
No printer Selected
</div>
因此,通过查询mongodb数据库,查找打印机名称并通过django模板/上下文填充动态将它们放入页面加载列表中来填充printerSelect列表。是否有可能知道用户何时选择该列表中的选项并让它更改printerInfo div的内容?
如果有帮助,我也知道jquery。我认为主要问题是:
修改
所以我实际上想出了一个使用Sushanth建议的hacky方式。基本上在django模板中,您创建了一堆div,其中包含从数据库请求的附加信息,最终将进入printerInfo。
然后使用jquery,您可以使用“printer1”,“printer2”作为该信息的映射键,将该信息保存到变量中。然后你删除这些div。因为这一切都是在加载页面时完成的,所以用户永远不会看到任何此类内容。
然后,只要选择了某个项目,就可以使用选择文本作为地图的键,其中包含打印机信息div中的值/文本。然后,只需将文本字段更改为
即可答案 0 :(得分:2)
您可以使用.change()
事件来获得第一个要求
$('#printerSelect').on('change' , function() {
// Code here
var $this = $(this);
var text = "No Printer Selected";
if($this.find('option:selected').index() !== 0){
text = $this.find('option:selected').text() + ' Selected';
}
$('#printerInfo').html(text);
}).change();
<强> Check Demo 强>
如果您想从服务器获取数据,请发送一个特殊选项的AJAX请求。