javascript - 如何在打印时隐藏 Jquery 多选

标签 javascript jquery css

我有这个带有 2 个 Jquery 多选的页面。

我有一个完美工作的 print.css 文件,它隐藏了整个表单,甚至隐藏了一些父 div。使用自制类(class)。此页面上隐藏了一些其他元素,其他元素使用无打印类。或者@media 打印。我添加了但没有解决问题。因此,Jquery 多选不会在打印时隐藏。

但是在页面上,当我单击打印时,它将显示打印件上的整个选项列表,甚至全选取消全选。这真的很烦人。将选择的 ID 添加到 print.css 或他的选项不起作用。无论如何,谁会想要打印出选项列表? A print screen of a print job. Grayed out some data for privacy concerns

CSS(print.css内容)

*/* REMOVE UNWANTED ELEMENTS */
#page-header, #footer, .btn-group, .hideOnPrint, #save {
    display: none;
}

/* CLEAR SOME OF THE BORDERS */
.content-box {
    border: none;
}

.fullSizeOnPrint {
    width: 100% !important;
}

#pager{
    display: none !important;
}

.no-print
{
    display: none !important;
    height: 0;
}

#comment-input
{
    display: none !important;
}

CSS 自定义.css

...
 @media print
{
    #pager,
    form,
    .no-print
    {
        display: none !important;
        height: 0;
    }


    .no-print, .no-print *{
        display: none !important;
        height: 0;
    }
}

部分 HTML 标题

<link href="/theme/css/ui/ui.print.css?version=x.x.x" media="print" rel="stylesheet" type="text/css" >
...
<link href="/css/custom.css?version=x.x.x" media="screen" rel="stylesheet" type="text/css" >

HTML 正文的一部分

<div id="filter-header-toggle-content" class="portlet-content no-print">
        <form id="blacklistHitListFilterForm" enctype="application/x-www-form-urlencoded" action="/blacklist/candidate-group" method="post"><ul class="content-box">
<table width="100%"><tbody><tr><td><li><label class="desc optional">Filter</label>
<div class="slideswitch"><div class="radio-group" style="display:none">
<label><input type="radio" name="active" id="active-0" value="0" checked="checked">Uit</label> <label><input type="radio" name="active" id="active-1" value="1">Aan</label></div><div class="btn-group" data-toggle="buttons-radio"><button class="btn btn-success active" data-value="0">Uit</button><button class="btn" data-value="1">Aan</button></div></div></li></td>
<td><li><label for="numberPlate" class="desc optional">Nummerplaat</label>
<div>
<input type="text" name="numberPlate" id="numberPlate" value="" class="field text full"></div></li>
<li><label for="country" class="desc optional">Land</label>
<div>
<input type="text" name="country" id="country" value="" class="field text full country ui-autocomplete-input" autocomplete="off" role="textbox" aria-autocomplete="list" aria-haspopup="true"></div></li>
<li><label for="priority" class="desc optional">Prioriteit</label>
<div>
<select name="priority" id="priority" class="field select full">
    <option value="0" label="--">--</option>
    <option value="1" label="1">1</option>
    <option value="2" label="2">2</option>
    <option value="3" label="3">3</option>
    <option value="4" label="4">4</option>
    <option value="5" label="5">5</option>
</select></div></li></td>
<td><li><label for="camera" class="desc optional">Camera</label>
<div>
<select name="camera[]" id="camera" multiple="multiple" class="field select full" style="display: none;">
    <option value="300" label="__Rob2456">__Rob2456</option>
    ...
</select><button type="button" class="ui-multiselect ui-widget ui-state-default ui-corner-all" aria-haspopup="true" tabindex="0" style="width: 294px;"><span class="ui-icon ui-icon-triangle-1-s"></span><span>Selecteer de opties</span></button></div></li>
<li><label for="node" class="desc optional">Node</label>
<div>
<select name="node[]" id="node" multiple="multiple" class="field select full" style="display: none;">
    <option value="51" label="ANPR-KA04A">ANPR-KA04A</option>
    ...
</select><button type="button" class="ui-multiselect ui-widget ui-state-default ui-corner-all" aria-haspopup="true" tabindex="0" style="width: 294px;"><span class="ui-icon ui-icon-triangle-1-s"></span><span>Selecteer de opties</span></button></div></li></td>
<td><li><label for="timespan" class="desc optional">Tijdsspanne</label>
<div>
<select name="timespan" id="timespan" class="field select full">
    <option value="0" label="--">--</option>
    ...
</select></div></li></td></tr></tbody></table></ul></form>    </div>

MULTLISELECT (jquery.multiselect.js) 版本的注释标记

/* jshint forin:true, noarg:true, noempty:true, eqeqeq:true, boss:true, undef:true, curly:true, browser:true, jquery:true */
/*
 * jQuery MultiSelect UI Widget 1.14pre
 * Copyright (c) 2012 Eric Hynds
 *
 * http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/
 *
 * Depends:
 *   - jQuery 1.4.2+
 *   - jQuery UI 1.8 widget factory
 *
 * Optional:
 *   - jQuery UI effects
 *   - jQuery UI position utility
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 */

最佳答案

@media print {    
    .no-print, .no-print *{
        display: none !important;
    }
}

发件人:How do I hide an element when printing a web page?

关于javascript - 如何在打印时隐藏 Jquery 多选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34315227/

相关文章:

html - vert 滚动 div 周围的边框

javascript - 如何启用长按操作以在 android WebView 中下载图像?

javascript - 如果 ajax 不返回任何内容,Jquery ajax 脚本不会更改 div 内容?

javascript - 使用 Flash CC 2015 发布后使用库符号

javascript - 如何更改图像宽度以填充所有容器,或将其居中对齐?

javascript - AJAX动态页面更新

javascript - 对进度条进行逆时针制作

html - CouchCMS - float 元素未正确 float

javascript - 如何选择wysihtml5编辑器的iframe?

javascript - JavaScript 可以进行 Web 应用程序拖放吗?