我有上传图片的格式,其中包含许多div。我想得到包含span的div内部图片的名称。
<form class="dropzone dz-clickable dz-started" action="form_upload.html">
<div class="dz-preview dz-processing dz-error dz-complete dz-image-preview">
<div class="dz-image">
//skipped as it is showing complete image
</div>
<div class="dz-details">
<div class="dz-size">
80kb
</div>
<div class="dz-filename">
<span data-dz-name="">aust_ews.PNG</span>
</div>
</div>
</div>
</form>
我正在尝试获取 aust_ews.PNG 但未能获得。
以下是我的尝试:
var e =$(".dz-filename").val();//failed
var e =$("#form dz-filename").val();//failed
答案 0 :(得分:3)
.val()
获取值(考虑输入字段),但您需要标记之间的内容 - 您需要.html()
。
除此之外,您需要获取内部span
的内容,而不是外部div
- 否则,结果将是<span data-dz-name="">aust_ews.PNG</span>
。
在代码中:
var e = $('.dz-filename span').html();
如果仍然无效,请验证您是否已加载jQuery库。
您只需输入$
并按Enter即可登录控制台。它应该陈述类似“功能”的东西。
在ready
内执行类似的操作是一种很好的做法。只是为了确保它能够按照你期望的方式工作:
$(document).ready(function()
{
var e = $('.dz-filename span').html();
});
关于ready
,请参阅jquery.com manual。
答案 1 :(得分:1)
而不是
$(".dz-filename").val();
试
$(".dz-filename").text();
因为div中存在的html或文本不是值,它是该div的内容。你可以使用html()或text()来获得它。
val()
仅适用于文本,选择,广播,复选框等输入元素,因为它会搜索value
属性并将其返回。
答案 2 :(得分:1)
请检查一下。它在这里工作。我已经检查了警报。
您只需要在$(document).ready(function(){}
函数中传递代码。
$(document).ready(function(){
var e = $(".dz-size").html();
alert(e)
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<form class="dropzone dz-clickable dz-started" action="form_upload.html">
<div class="dz-preview dz-processing dz-error dz-complete dz-image-preview">
<div class="dz-image">
//skipped as it is showing complete image
</div>
<div class="dz-details">
<div class="dz-size">
80kb
</div>
<div class="dz-filename">
<span data-dz-name="">aust_ews.PNG</span>
</div>
</div>
</div>
</form>
&#13;