首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何设置spring窗体‘`select`’元素的“`path`”属性的值?

如何设置spring窗体‘`select`’元素的“`path`”属性的值?
EN

Stack Overflow用户
提问于 2017-08-14 08:27:21
回答 2查看 2.4K关注 0票数 0

我正在开发一个基于springmvc的java web项目。

在一个页面上,html源代码片段如下所示:

代码语言:javascript
运行
复制
<form:select id="goodSelectId" path="goodId" items="${goodsList}"
      itemLabel="name" itemValue="goodCode">
      <form:option value="">select the product</form:option>
</form:select>


<form:checkbox path="flag" id="flag" value="1"
      onchange="change(this, 'goodSelectId')"/>  

相关的jquery函数:

代码语言:javascript
运行
复制
    function change(self, targetId) {
        if ($(self).is(':checked')) {
            $("#" + targetId).val("");
            $("#" + targetId).attr("disabled", true);      
        }
        else {
            $("#" + targetId).attr("disabled", false);
        }
    }

勾选复选框时,希望使select元素值为空,然后禁用select元素。

“禁用”没有问题,但不能将“the value”设置为 of select:form.

这就是:

1)如果使用select下拉菜单选择选项,则可以将该值传递给path

2)但如果通过上面的javascript函数设置值,则不能将该值传递给path

我的问题是:如何将javascript函数中设置的值传递给path

EN

回答 2

Stack Overflow用户

发布于 2017-08-14 08:44:50

这是因为您的选项值是12

试试这句话:

代码语言:javascript
运行
复制
  $("#" + targetId).val(1);

修改后的代码:

代码语言:javascript
运行
复制
function change(self, targetId) {
  if ($(self).is(':checked')) {
    $("#" + targetId).val(1);
    $("#" + targetId).attr("disabled", true);
  } else {
    $("#" + targetId).attr("disabled", false);
  }

  $("#show").html($("#" + targetId).val());
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="test">
  <option value="">请选择</option>
  <option value="1">选项一</option>
  <option value="2">选项二</option>
</select>

<input type="checkbox" id="flag" value="1" onchange="change(this, 'test')" />

<p id="show">xx</p>

票数 1
EN

Stack Overflow用户

发布于 2017-08-14 08:41:22

我使用了$("#" + targetId + ' option:first').attr('selected', 'selected');,似乎这就是您要寻找的,请查看下面的代码:

代码语言:javascript
运行
复制
function change(self, targetId) {
  if ($(self).is(':checked')) {
    $("#" + targetId + ' option:first').attr('selected', 'selected');
    $("#" + targetId).attr("disabled", true);
  } else {
    $("#" + targetId).attr("disabled", false);
  }

  $("#show").html($("#" + targetId).val());
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="test">
  <option value="">请选择</option>
  <option value="1">选项一</option>
  <option value="2">选项二</option>
</select>

<input type="checkbox" id="flag" value="1" onchange="change(this, 'test')" />

<p id="show">xx</p>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45670346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档