java - 刷新页面或提交请求后保持单选按钮处于选中状态

标签 java html jsp struts dom-events

我知道这个问题可能听起来很基本,但我一直在尝试解决它,但仍然无法做到。我将非常感谢任何帮助。

我的 jsp 页面中有两个单选按钮。当选择其中之一时,它会调用 Javascript 函数。最终发生的情况是,如果您选择单选按钮 1,则显示表 1 中的数据,如果选择单选按钮 2,则显示表 2 中的数据。

结果,我的页面被刷新并且单选按钮不再被选中。我想向用户显示选择了哪个单选按钮。

function viewUploadedData(){
    document.location.href = "ForecastInquiryFilter.do?exportVar=viewUploadedData";

function viewTopsData(radio){
    document.location.href = "ForecastInquiryFilter.do?exportVar=viewTopsData";
}
<input type="radio" name="dataTypeToView" id="topsData" onclick="viewTopsData();"/>
<label for="topsData">TOPS Data</label><br/>
<input type="radio" name="dataTypeToView" id="uploadedData" onclick="viewUploadedData();"/>
<label for="uploadedData">Uploaded Data </label>

最佳答案

如果您使用“checked”属性生成单选按钮的 html,它将被选中。例如,以下 html 将生成一个选中的单选按钮:

<input type=radio name=myradio value=1 checked>

因此,话虽如此,您需要修改您的 jsp,以便有条件地为相应的单选按钮生成“checked”属性。想必您的 jsp 知道选中了哪个单选按钮,因此希望这应该很容易编码。

因此,您的 jsp 代码可能如下所示:

<%
String whichRadio = request.getParameter("myradio");
String r1checked = "";
if (whichRadio.equals("1")) r1checked = " checked";
String r2checked = "";
if (whichRadio.equals("2")) r2checked = " checked";
%>
<input type=radio name=myradio value="1"<%= r1Checked %>>
<input type=radio name=myradio value="2"<%= r2Checked %>>

上面的代码将为您的 jsp 被调用时检查的任何 radio 生成 checked 属性。如果没有选中任何单选按钮,则不会生成选中的属性。

关于java - 刷新页面或提交请求后保持单选按钮处于选中状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10303349/

相关文章:

java - 如何将eclipse连接到postgresql?

java - 如何扫描所有 IP 地址范围?

java - 如何以一种好的方式在 Java 中的同一个列表中查找对象对

html - 如何在不受缩放影响的情况下将div标签居中放置在html页面中

html - 如何根据子元素的值获取节点的位置

java - 从servlet加载图片到JSP

java - 在 servlet 中使用资源包?

java - super.paintComponent(g) 的问题

html - 如何让元素忽略边距?

javascript - 无法访问 Action 类中禁用下拉列表的所选项目的值(struts 2)