繁体   English   中英

从带有主文件的aspx文件调用时,jQuery代码不起作用

[英]jQuery code not working when called from aspx file with a master file

我创建了一个空白的asp.net表单网站。 我已进入default.aspx页面,并将默认代码替换为的代码

https://blueimp.github.io/jQuery-File-Upload/jquery-ui.html

所以看起来

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
HTML / Javascript from the link above. 
</asp:Content>

如果我删除主文件的内容并仅粘贴页面的内容,则效果很好。 所以出于某种原因

当我单击“添加文件”并浏览文件时,该页面上未显示该文件,但是当我没有主文件时,它将显示正常。

我了解这不是很棒的调试信息。 如果有人知道我冷的好方法,甚至调试它,那就太好了。

如果我猜似乎出现以下代码是错误的原因。

<script id="template-upload" type="text/x-tmpl">
{% for (var i=0, file; file=o.files[i]; i++) { %}
      {% console.log(file.name); %}
    <tr class="template-upload fade">
        <td>
            <span class="preview"></span>
        </td>
        <td>
            <p class="name">{%=file.name%}</p>
            <strong class="error"></strong>
        </td>
        <td>
            <p class="size">Processing...</p>
            <div class="progress"></div>
        </td>
        <td>
            {% if (!i && !o.options.autoUpload) { %}
                <button class="start" disabled>Start</button>
            {% } %}
            {% if (!i) { %}
                <button class="cancel">Cancel</button>
            {% } %}
        </td>
    </tr>
{% } %}
</script>

当我通过浏览器查看html时,当我将其与主文件一起加载时,页面上缺少以下形式

<form id="fileupload" action="sendfiles" method="POST" enctype="multipart/form-data">

在处理ASPX时,请不要在JavaScript中使用原始html ID,您需要通过以下方式查询其真实ID:

<script>
    var controlId = '<%= this.SomeControl.ClientId %>'
    var things = $(controlId);
</script>

<%= ...%>逻辑是一个ASPX表达式,服务器端aspx引擎将看到它,并将其吐出到响应时将其转换为您要的内容。

现在,您已经确定了缺少的表单-Asp.Net Webforms不允许多个元素。 Web表单附带了一个烦人的问题,但是在这里的第一个答案中可以找到一些变通办法,并且对此问题进行了很好的讨论: 我们可以在网页中使用多种表单吗?

上一个答案-在浏览器(F12)中检查生成的HTML的来源。 几乎没有可用的信息,我的猜测是您要用jQuery定位的元素的ID在母版页的子级中正在更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM