abdul subhan mohammed Ответов: 1

Как напечатать div в ретрансляторе с помощью jquery?


Привет ребята,

У меня есть ретранслятор asp.net.

В этом ретрансляторе у меня есть DIV, кнопка для печати, и я хочу распечатать этот div.

Проблема здесь в том, что когда я нажимаю кнопку,
Во-первых, он показывает пустую страницу
2dly, если ретранслятор имеет 10 строк, он работает 10 раз в один клик...

ниже приведена часть кода в ретрансляторе:

Что я уже пробовал:

<a href="#" id="btnPrintSingle" class="btnPrintSingle">Print</a>
<div id="printableAreaSingle">
<table style="width: 100%; padding-left: 0">
    <tbody><tr>
        <td>
            <table border="1" style="width: 100%">
                <tbody><tr>
                    <td>
                        <h2>Token</h2>
                    </td>
                    <td colspan="3">
                        <h2><%# Eval("SessionToken") %></h2>
                    </td>
                </tr>
                <tr>
                    <td>
                        <h2>Center</h2>
                    </td>
                    <td colspan="3">
                        <h2>
                            <%# Eval("CandidateCertificate.Candidate.Center.NameEN") + "(" + Eval("CandidateCertificate.Candidate.Center.Code") + ")" %>

                        </h2>
                    </td>
                </tr>
                <tr>
                    <td>Candidate Code</td>
                    <td><%# Eval("CandidateCertificate.Candidate.Code") %></td>
                    <td>Candidate Name</td>
                    <td><%# Eval("CandidateCertificate.Candidate.NameEN") %></td>
                </tr>
                <tr>
                    <td>UserName</td>
                    <td><%# Eval("CandidateCertificate.Candidate.UserName") %></td>
                    <td>Email</td>
                    <td><%# Eval("CandidateCertificate.Candidate.Email") %></td>
                </tr>
                <tr>
                    <td>Program</td>
                    <td><%# Eval("CandidateCertificate.Certification.Program.NameEN") %></td>
                    <td>Certificate</td>
                    <td><%# Eval("CandidateCertificate.Certification.NameEN") %></td>
                </tr>
                <tr>
                    <td>Module</td>
                    <td><%# Eval("Module.NameEN") %></td>
                    <td>Status</td>
                    <td><%# Eval("Status") %></td>
                </tr>
                <tr>
                    <td>Exam Details(M/D/Y)</td>
                    <td colspan="3" style="font-weight: bold"><%# Eval("ExamSession.SlotTime") %></td>
                </tr>
            </tbody></table>
        </td>
    </tr>
    <tr>
        <td> </td>
    </tr>
</tbody></table>
<script type="text/javascript">
    $(document).ready(function () {
        $('a.btnPrintSingle').bind("click", function (e) {
            e.preventDefault();
            $("div.questionsPanel").hide();
            $("#sidebar-wrapper").hide();
            $("div.navbar-fixed-top").hide();
            $("div.page-title").hide();
            $("#printableAreaSingle").show();
            window.print();
            $("#printableAreaSingle").hide();
            $("div.questionsPanel").show();
            $("#sidebar-wrapper").show();
            $("div.navbar-fixed-top").show();
            $("div.page-title").show();

        });
    });
</script>
</div>


может ли кто-нибудь мне помочь?..


Спасибо

1 Ответов

Рейтинг:
0

Sebastiaan Meijerink

Если этот код находится внутри ретранслятора,он будет повторен.
Итак,

$('a.btnPrintSingle').bind("click"

Также будет повторяться, и функция будет привязана столько раз, сколько будет строк.

Вы должны поместить код привязки вне ретранслятора.