我第一次使用Play框架。
我想在从下拉列表中选择一个值时更新网页,而不刷新网页。
考虑以下示例:
<select>
<option value= "Apple"> Apple </option>
<option value = "Banana"> Banana </option>
</select>
从下拉列表中选择值时,应将其发布到服务器。然后服务器应该根据它获得的值返回一些信息。现在,我们应该显示与从页面刷新的下拉列表中选择的值对应的内容。
我没有找到使用play框架实现此方法的方法。通常我们可以通过最初隐藏div来实现这一点,当从下拉列表中选择一个值时,我们可以将内容(从后端获取)添加到div并显示它。我不明白如何实现服务器端部分。在play框架中,controller通常返回Result类型。如何在play框架中的请求中返回Json值?
任何人都可以提出其他想法吗?
由于
答案 0 :(得分:1)
使用jQuery的解决方案(请参阅change()
和load()
):
<select id="select">
<option value="Apple">Apple</option>
<option value="Banana">Banana</option>
</select>
<div id="result"></div>
<script>
$('#select').change(function() {
$('#result').load('/foo/bar?fruit=' + $(this).val());
});
</script>
编辑:要解决问题的JSON /服务器端部分,请查看ScalaJsonHttp(或JavaJsonActions)。