struts2 - 停止 sj :datepicker from opening Struts2

标签 struts2 jquery-ui-datepicker

我关注 <sj:datepicker> :

<sj:datepicker
    id="dateFrom_id%{index}"  
    name="billingItems[%{index}].dateFrom" 
    value="%{billingItems[#index].dateFrom}"  
    displayFormat="dd.mm.yy"
    cssClass="customDatePicker" 
    buttonImage="/images/icons/calendar-blue.png"
    parentTheme="css_custom"
    firstDay="1"
    onBeforeTopics="beforeShow"
/>

和以下beforeShow主题:

$.subscribe('beforeShow', function(event, data) {

    if($(event.originalEvent.input).attr('readonly')){
        // ned to stop event
    }
});

如何阻止事件传播。我试过:

event.stopPropagation();
event.preventDefault();
event.stopImmediatePropagation();

但似乎没有任何效果。

最佳答案

不要使用 event.stopImmediatePropagation(); 而只使用 stopImmediatePropagation();

试试这个

$.subscribe('beforeShow', function(event, data) {

if($(event.originalEvent.input).attr('readonly')=="readonly"){
     stopImmediatePropagation();
    alert('hi');
}
});

警告行不会执行。

另外不要忘记在你的 < sj:datepicker .../> 中使用 readonly="true"。例如

<sj:datepicker
id="dateFrom_id"  
name="dateFrom" 
value="%{'today'}"
displayFormat="dd.mm.yy"
buttonImage="images/icon/Calendar-Blue.png"
cssClass="customDatePicker" 
firstDay="1"
onBeforeTopics="beforeShow"
readonly="true"
/>

关于struts2 - 停止 sj :datepicker from opening Struts2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16770186/

相关文章:

java - 如何查看数据库上的所有用户 - JDBC Struts

java - struts2中实现session的最标准方式

单击图标的 jQuery 日期选择器

JQuery UI Datepicker newDate 减去 2 个月

jquery - 在 IE10 中导航回页面时,孤立的 jQuery Datepicker 重新出现

jquery - 将日历 jquery 图像添加到 datepicker

java - 如何禁用 Struts 验证拦截器?

java - struts2 :property tag: Better way to replace value?

eclipse - Eclipse IDE 中的 Struts2-Maven

Jquery datepicker - 仅日期和月份