您好我已使用以下代码在struts 2中生成了一个日期选择器
<sj:datepicker label="Date" name="optOutDate" id="optOutDate1" maxlength="10" value="% {optOutDate}" cssClass="Datepicker" size="9" yearRange="2008:2027" changeMonth="true" changeYear="true" buttonImageOnly="true" displayFormat="mm-dd-yy" showOn="button" />
上面的代码在浏览器中生成了以下HTML
<tr>
<td class="tdLabel"><label for="optOutDate1" class="label">Date:</label></td>
<td>
<input type="text" name="optOutDate" size="9" maxlength="10" value="" id="optOutDate1" class="Datepicker"/>
</td>
</tr>
<script type='text/javascript'>
jQuery(document).ready(function () {
jQuery.struts2_jquery_ui.initDatepicker(false);
});
jQuery(document).ready(function () {
var options_optOutDate1 = {};
options_optOutDate1.buttonImageOnly = true;
options_optOutDate1.changeMonth = true;
options_optOutDate1.changeYear = true;
options_optOutDate1.showOn = "button";
options_optOutDate1.buttonImage = "/kpnsnbm/struts/js/calendar.gif";
options_optOutDate1.yearRange = "2008:2027";
options_optOutDate1.displayformat = "mm-dd-yy";
options_optOutDate1.jqueryaction = "datepicker";
options_optOutDate1.id = "optOutDate1";
options_optOutDate1.name = "optOutDate";
jQuery.struts2_jquery_ui.bind(jQuery('#optOutDate1'),options_optOutDate1);
});
</script>
这里的问题是我无法正确隐藏此日期选择器;我试图通过hide()方法隐藏它,如下所示,但它只隐藏文本框而不隐藏日期选择器图像..
<script type="text/javascript">
jQuery(function($){
$( '.Datepicker' ).hide(),
$('.tdLabel').hide(),
$('.label').hide();
});
</script>
答案 0 :(得分:2)
将datepicker添加到div标签
<div id="xyz">
<sj:datepicker label="Date" name="optOutDate" id="optOutDate1" maxlength="10" value="% {optOutDate}" cssClass="Datepicker" size="9" yearRange="2008:2027" changeMonth="true" changeYear="true" buttonImageOnly="true" displayFormat="mm-dd-yy" showOn="button" />
</div>
然后根据条件隐藏div标签:
$("#xyz").css("display","none");
答案 1 :(得分:1)
正如the answer中提到的类似问题,你需要在隐藏它之前销毁日期选择器:
<script type="text/javascript">
jQuery(function($){
$('.Datepicker').datepicker("destroy"),
$('.Datepicker').hide(),
$('.tdLabel').hide(),
$('.label').hide();
});
</script>
答案 2 :(得分:1)
你应该能够定位元素并像这样隐藏它。
$( ".Datepicker" ).datepicker( "widget" ).hide();
答案 3 :(得分:0)
请参阅以下链接 https://code.google.com/p/struts2-jquery/wiki/DatePickerTag
实施例:
使用&#34; showAnim&#34;作为用于设置用于显示/隐藏日期选择器的动画名称的属性。使用&#39;显示&#39; (默认设置),&#39; slideDown&#39;,&#39; fadeIn&#39;或任何show / hide jQuery UI效果。默认值:&#39;显示&#39;