【发布时间】:2015-09-11 06:18:46
【问题描述】:
我的服务器页面中有一个dropdown 列表字段。我想根据下拉菜单中选择的选项向页面添加文本字段。
渲染字段的java代码:
protected void printContent(HttpServletRequest request, HttpServletResponse response) {
StringBuffer sb = new StringBuffer();
makeJsScriptsAdvancedRest(request, sb);
sb.append("<TABLE id='abc' style='width:100%;'> \n");
makePagingTypeField(sb);
sb.append("</TABLE>");
if (option 1 : don't show fields)
{
sb.append("<TABLE id='certs1' style='display:none'>");
makeField1(sb);
sb.append("</TABLE>");
sb.append("<TABLE id='certs2' style='display:none'>");
makeField2(sb);
makeField3(sb);
makeField4(sb);
sb.append("</TABLE>");
}
else if (option 2 : show fields in certs1)
{
sb.append("<TABLE id='certs1' style='display:block'>");
makeField1(sb);
sb.append("</TABLE>");
sb.append("<TABLE id='certs2' style='display:none'>");
makeField2(sb);
makeField3(sb);
makeField4(sb);
sb.append("</TABLE>");
}
else if (option 3 : show fields in certs2)
{
sb.append("<TABLE id='certs1' style='display:none'>");
makeField1(sb);
sb.append("</TABLE>");
sb.append("<TABLE id='certs2' style='display:block'>");
makeField2(sb);
makeField3(sb);
makeField4(sb);
sb.append("</TABLE>");
}
print(sb, true);
}
编辑:
根据drgPP的回答,我将代码更改如下。 Javascript代码:
FLD_PagingType 是 PaginField 下拉列表的名称。
protected void makeJsScriptsAdvancedRest(HttpServletRequest request,StringBuffer sb) {
sb.append("<script type=\"text/javascript\">\n");
sb.append("function updateValues() {\n");
sb.append(" var y = document.getElementById('certs1'); var z = document.getElementById('certs2');"+
" var x = document.getElementById('" + FLD_PagingType + "'); var w = x.options[x.selectedIndex].text;" +
"if(w =='" + PAGE_BASED + "') { y.style.display = 'block'; z.style.display = 'none'; }" +
"else if(w =='" + RECORD_BASED + "') { y.style.display = 'none'; z.style.display = 'block';} " +
"else if(w =='" + NO_PAGINATION + "') { y.style.display = 'none'; z.style.display = 'none';} \n");
sb.append("}\n");
sb.append("</script>\n");
}
getSelectValue() 返回字符串选项值。
我可以正确操作选择字段,但选择选项时 UI 上的内容会发生变化。
任何建议,指针表示赞赏!
【问题讨论】:
-
我真的不明白你的问题/问题。
-
我想要根据所选选项在 UI 上添加不同字段集的功能。但是使用上面的代码,即使在选择字段发生变化之后,UI 上也没有附加字段
-
@Mousey 我不知道错误在哪里,这就是我在这里发帖的原因。但现在我知道错误出在 javascript 中。我编辑了javascript的代码
-
@Vaishnavee 将编辑调试标签的 wiki 并提供一些调试资源 - stackoverflow.com/tags/debugging/info - 调试标签中的热门问题也很有用
标签: javascript java drop-down-menu