停止sj:datepicker打开Struts2

时间:2013-05-27 09:30:05

标签: 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();

但似乎没有任何效果。

1 个答案:

答案 0 :(得分:0)

请勿使用event.stopImmediatePropagation();而只使用stopImmediatePropagation();

试试这个

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

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

警告线将无法执行。

另外不要忘记使用readonly =&#34; true&#34;在你的&lt; sj:datepicker ... /&gt; 。例如

<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"
/>
相关问题