我需要上传的信息应该显示在标签一旦文件选择。我尝试了下面的代码。但它不起作用。请给我建议。
<asp:FileUpload ID="fileUpload" runat="server" /><br />
<asp:Label ID="labelsuccess" runat="server" Text="uploaded" visible="false"></asp:Label>
<script>
$(document).ready(function () {
$('#fileUpload').change(function () {
var path = $(this).val();
$('#labelsuccess').innertext
}
});
});
</script>
发布于 2021-09-28 13:48:47
已更新答案
HTMLElement.innerText是一个DOM属性,而.text()是用于通过jQuery获取或设置匹配元素的文本的函数。
https://api.jquery.com/text/#text-text
.text()
描述:获取匹配元素集合中每个元素的组合文本内容,包括它们的后代。
.text(文本)
描述:将匹配元素集合中每个元素的内容设置为指定的文本。
所以在你的原始代码中
$('#labelsuccess').innertext
您正在调用一些在我看来并不存在的属性。我希望.innerText
存在,但我不确定,因为它是$ (jQuery)对象。
要更新#labelsuccess类对象,您想做的是调用.text函数。
$('#labelsuccess').text(path)
这里我有一个纯粹的jQuery/html小提琴:https://jsfiddle.net/uboe41hr/。请注意,我已经根据jQuery .on()
函数的用法重新构造了HTML.此函数持续观察目标元素(在我的示例中为#fileUploadParent
),以查看其子元素(#fileUpload
)中的更改。
但是,根据您正在使用ASP.NET的事实,可能还有其他的考虑因素,所以您可能想要查看https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.webcontrols.fileupload?view=netframework-4.8上的示例。
观察最后一个资源中的示例,我没有看到jQuery集成,而且似乎ASP.NET期望交互式元素(在本例中是您希望jQuery操作的元素)由本机ASP.NET函数处理。
https://stackoverflow.com/questions/69362882
复制相似问题