【问题标题】:Attach onclick event to struts radio button将 onclick 事件附加到 struts 单选按钮
【发布时间】:2012-12-21 16:57:36
【问题描述】:

我似乎无法将事件附加到我的 struts 单选按钮。

定义为:

<s:radio id="useCourseList"
         name="useCourseList"
         required="true"
         label="Course List?"
         labelposition="top" 
         list="#{'1':'No','2':'Yes'}" 
         value="1" 
/>

但我似乎无法为其创建点击事件。我试过了

$('#useCourseList').click(function(event){
    if($(this).val() === '2') {
        renderCourseList();
    } else {
        switchToSingleCourseMode();
    }
});

但这附加到“useCourseList” - 按钮的实际 ID 是“useCousreList1”和“useCourseList2”。

将相同的点击事件分配给它们似乎很不可靠,尤其是当以后添加更多选项时,我也必须添加它们。如何添加“完成”?

【问题讨论】:

  • 你可以显示生成的 HTML 是什么吗?
  • 如果实际 ID 与您在 jQuery 选择器中使用的不同,它当然不会触发。相反,将类属性添加到您的元素,并按类选择。
  • 给单选按钮一个 CSS 类并使用它。
  • @Dave 太棒了——现在我被撕裂了......你看,在阅读了你的建议后,我认为这是正确的做法。但我有一个解决方案正在运行。那么......我是否使用我的代码中已经存在并且有效的解决方案?还是我退后一步,做对了。加尔!
  • 变化不大。

标签: jquery onclick struts radio


【解决方案1】:

我假设渲染的 html 的 id 不会与定义的完全相同。你可以试试:

$('[id*="useCourseList"]').click(...

http://api.jquery.com/attribute-contains-selector/

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-21
  • 1970-01-01
  • 1970-01-01
  • 2015-05-12
相关资源
最近更新 更多