主頁 >  其他 > 加載pdf時jquery加載事件未在iframe上觸發-即使它在單獨的專案中觸發正常

加載pdf時jquery加載事件未在iframe上觸發-即使它在單獨的專案中觸發正常

2022-01-11 00:29:02 其他

我有一個非常奇怪的問題,我無法弄清楚。我正在嘗試將加載對話框添加到生成 pdf 的頁面。我在一個單獨的專案中對網頁進行了編碼,并且對話框運行良好。但是當我將極其基本的 jquery-ui 代碼包含到我現有的網站專案中時,它就不起作用了。具體來說,當 PDF 加載到 iframe 中時,彈出視窗不會消失。基本上.load(function())事件沒有觸發。

但是該事件在我的單獨專案中觸發得很好。我使用完全相同的資料和代碼生成完全相同的 pdf,它作業正常。但是當放入我的主專案時,加載事件不會觸發。

這是我的代碼。我作業的公司仍然使用網路表單,所以...

未觸發的代碼

$(function () {
    $("[id$=ifPDF]").load(function () {
        hideDialog();
    });
});

如果你們能幫助我找到沖突,將不勝感激

不錯的.aspx

<%@ Page Title="" Language="C#" MasterPageFile="~/main.master" AutoEventWireup="true" CodeFile="nice.aspx.cs" Inherits="letters_missed_appointment_nice" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    <link rel="stylesheet" type="text/css" href="\resources\css\letters.css" />
    <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css" />
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
    <style type="text/css">
        #dialog {
            display: none;
        }
    </style>
    <script type="text/javascript">
        function showDialog() {
            $("#dialog").dialog();
        }
        function hideDialog() {
            $("#dialog").dialog("close");
        }
        $(function () {
            $("[id$=ifPDF]").load(function () {
                hideDialog();
            });
        });
    </script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="pageHeader" Runat="Server">
    Cabinet
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="pageContent" Runat="Server">
    <h1>Nice Letter</h1>
    <h3>Enter in the information below and click "Create Letter".</h3>
    <asp:UpdatePanel ID="upMain" runat="server">
        <ContentTemplate>
            <table>
                <tr>
                    <td>Letter Date:&nbsp;&nbsp;&nbsp;</td>
                    <td><asp:TextBox ID="txtLetterDate" runat="server"></asp:TextBox>&nbsp;&nbsp;&nbsp;</td>
                    <td>Recipient Name:&nbsp;&nbsp;&nbsp;</td>
                    <td><asp:TextBox ID="txtRecipientName" runat="server"></asp:TextBox></td>
                </tr>
                <tr>
                    <td>Appointment Date:&nbsp;&nbsp;&nbsp;</td>
                    <td><asp:TextBox ID="txtAppointmentDate" runat="server"></asp:TextBox>&nbsp;&nbsp;&nbsp;</td>
                    <td>Patient Name:&nbsp;&nbsp;&nbsp;</td>
                    <td><asp:TextBox ID="txtPatientName" runat="server"></asp:TextBox></td>
                </tr>
                <tr><td>&nbsp;&nbsp;&nbsp;</td></tr>
                <tr>
                    <td><asp:Button ID="cmdCreateLetter" Text="Create Letter" OnClientClick="showDialog();" runat="server" /></td>
                </tr>
            </table>
            <br />
            <iframe id="ifPDF" visible="false" runat="server" />
            <div id="dialog" title="Loading PDF">Loading PDF, Please Wait ...</div>
        </ContentTemplate>
    </asp:UpdatePanel>
</asp:Content>

不錯的.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class letters_missed_appointment_nice : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        ifPDF.Attributes["class"] = "pdf_view";
        cmdCreateLetter.Click  = new EventHandler(Load_PDF);
    }

    protected void Load_PDF(object sender, EventArgs e)
    {
        ifPDF.Visible = true;

        PDFGenerator my_doc = new PDFGenerator();
        my_doc.Template = Server.MapPath("nice_letter.html");

        my_doc.Add("letter_date", txtLetterDate.Text);
        my_doc.Add("recipient_name", txtRecipientName.Text);
        my_doc.Add("patient_name", txtPatientName.Text);
        my_doc.Add("appointment_date", txtAppointmentDate.Text);

        byte[] doc_array = my_doc.CreateDocument(base_url: Server.MapPath("/letters/missed_appointment/"));

        string b64_doc = Convert.ToBase64String(doc_array, 0, doc_array.Length);
        string pdf_src = $"data:application/pdf;base64,{b64_doc}";
        ifPDF.Attributes["Src"] = pdf_src;
    }
}

字母.css

body > form > main {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 5px;
    min-height: 800px;
}

body > form > footer {
    position: static;
    padding-bottom: 50px;
}

.pdf_view {
    width: 100%;
    height: 700px;
    border: none;
}

main.css

body {
    margin: 0px;
    background-color: #e7e7de;
    font-family: 'Roboto', sans-serif;
}

    body > form > #pageGreeting {
        width: calc(100%-20px);
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 20px;
        background-color: #0f3057;
        box-shadow: 0px 4px 15px -1px #000000;
    }

        body > form > #pageGreeting > #pageTitle {
            font-size: 35px;
            font-weight: 700;
            color: #e7e7de;
            font-family: 'Courgette', cursive;
        }

        body > form > #pageGreeting > nav {
            display: inline-block;
            margin-left: 30px;
            font-size: 20px;
            border-left: 3px solid #e7e7de;
            padding-left: 30px;
        }

            body > form > #pageGreeting > nav > span {
                display: inline-block;
                margin-left: 10px;
                border-left: 1px solid #e7e7de;
                border-right: 1px solid #e7e7de;
                padding-left: 10px;
                padding-right: 10px;
            }

                body > form > #pageGreeting > nav > span:first-child {
                    margin-left: 0px;
                    border-left: none;
                }

                body > form > #pageGreeting > nav > span:last-child {
                    border-right: none;
                }

                body > form > #pageGreeting > nav > span > a {
                    color: aqua;
                    text-decoration: none;
                    font-weight: 900;
                    font-size: 25px;
                }

                    body > form > #pageGreeting > nav > span > a:hover {
                        color: blue;
                    }

    body > form > main {
        width: 100%;
        background-color: #e7e7de;
        min-height: 600px;
        margin-top: 15px;
    }

        body > form > main > h1 {
            display: block;
            margin-left 15px;
        }

    body > form > footer {
        position: absolute;
        bottom: 0px;
        width: 100%;
        padding-top: 10px;
        padding-bottom: 10px;
        text-align: center;
        font-family: Arial;
        font-size: 15px;
        font-weight: 900;
        background-color: #00597a;
        color: white;
    }

div.pageDescription {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 20px;
    font-size: 30px;
    text-align: center;
    font-weight: 700;
}

主控

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="main.master.cs" Inherits="main" %>

<!DOCTYPE html>

<html>
    <head runat="server">
        <title></title>
        <link rel="preconnect" href="https://fonts.gstatic.com">
        <link href="https://fonts.googleapis.com/css2?family=Courgette&family=Roboto:wght@300&display=swap" rel="stylesheet" />
        <link rel="stylesheet" type="text/css" href="resources/css/main.css" />
        <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css" />
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
        <asp:ContentPlaceHolder id="head" runat="server">
        </asp:ContentPlaceHolder>
    </head>
    <body>
        <form id="frmMain" runat="server">
            <asp:ScriptManager ID="smMain" runat="server"></asp:ScriptManager>
            <div id="pageGreeting">
                <span id="pageTitle"><asp:ContentPlaceHolder ID="pageHeader" runat="server"></asp:ContentPlaceHolder></span>
                <nav><% WriteNav(); %></nav>
            </div>
            <main><asp:ContentPlaceHolder ID="pageContent" runat="server"></asp:ContentPlaceHolder></main>
            <footer>Copyright &copy; 2022 Renewed Life Chiropractic Center - All Rights Reserved</footer>
        </form>
</body>
</html>

uj5u.com熱心網友回復:

您可能有來自瀏覽器“cors”的阻止,檢查開發人員控制臺(f12)上的阻止訊息或您可能必須發送標頭以允許在“父”頁面中顯示 iframe 的任何錯誤訊息

uj5u.com熱心網友回復:

我認為您的 iframe 的 ID 在渲染時會發生更改,因為您使用了 'runat="server"' 屬性。這就是為什么 javascript 沒有通過 ID 找到這個控制元件的原因。嘗試將 clientidmode 設定為靜態,如下所示:

<iframe id="ifPDF" visible="false" runat="server" ClientIDMode="Static" />

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/407479.html

標籤:

上一篇:JqueryUi在反應功能組件中不起作用

下一篇:防止heroku在部署時運行“npmrunbuild”

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more