为什么可以';我不能在jQuery中得到一个隐藏的字段值吗?
我尝试使用以下代码获取值为什么可以';我不能在jQuery中得到一个隐藏的字段值吗?,jquery,Jquery,我尝试使用以下代码获取值“/storage/emulated/0/Pictures/A1.PNG”,但结果为空,为什么 Js代码 $('.CssRename').click(function () { var fileName = GetHiddenFilename(this); alert("My: "+fileName); }); function GetHiddenFilename(obj) {
“/storage/emulated/0/Pictures/A1.PNG”
,但结果为空,为什么
Js代码
$('.CssRename').click(function () {
var fileName = GetHiddenFilename(this);
alert("My: "+fileName);
});
function GetHiddenFilename(obj) {
return $(obj).parent().prevAll().first().val();
}
<li>
<input type="hidden" value="/storage/emulated/0/Pictures/A1.PNG" />
<div class="leftli">
<input type="checkbox" name="CHFile" class="FilenameCheckboxForSelect" /><span class="CssHandleKnown">A1.PNG</span>
</div>
<div class="rightli">
<span class="CssCopy">Copy</span>
<span class="CssDetails">Details</span>
<span class="CssDownloadSingle">Download</span>
<span class="CssRename">Rename</span>
<span class="CssDeleteSingle">Delete</span>
</div>
<div class="middleli"><span class="fileDate">2017-03-03 10:41</span><span class="filesize">66 KB</span></div>
</li>
Html源代码
$('.CssRename').click(function () {
var fileName = GetHiddenFilename(this);
alert("My: "+fileName);
});
function GetHiddenFilename(obj) {
return $(obj).parent().prevAll().first().val();
}
<li>
<input type="hidden" value="/storage/emulated/0/Pictures/A1.PNG" />
<div class="leftli">
<input type="checkbox" name="CHFile" class="FilenameCheckboxForSelect" /><span class="CssHandleKnown">A1.PNG</span>
</div>
<div class="rightli">
<span class="CssCopy">Copy</span>
<span class="CssDetails">Details</span>
<span class="CssDownloadSingle">Download</span>
<span class="CssRename">Rename</span>
<span class="CssDeleteSingle">Delete</span>
</div>
<div class="middleli"><span class="fileDate">2017-03-03 10:41</span><span class="filesize">66 KB</span></div>
</li>
A1.PNG
复制
细节
下载
改名
删除
2017-03-03 10:4166 KB
而且,Html源代码可以获得正确的结果
<li>
<input type="hidden" value="/storage/emulated/0/Pictures/A1.PNG" />
<div class="rightli">
<span class="CssCopy">Copy</span>
<span class="CssDetails">Details</span>
<span class="CssDownloadSingle">Download</span>
<span class="CssRename">Rename</span>
<span class="CssDeleteSingle">Delete</span>
</div>
<div class="leftli">
<input type="checkbox" name="CHFile" class="FilenameCheckboxForSelect" /><span class="CssHandleKnown">A1.PNG</span>
</div>
<div class="middleli"><span class="fileDate">2017-03-03 10:41</span><span class="filesize">66 KB</span></div>
</li>
复制
细节
下载
改名
删除
A1.PNG
2017-03-03 10:4166 KB
$('.CssRename')。单击(函数(){
var$this=$(this.closest(“li”).find(“input.hidden”);//这将是idden字段
var fileName=GetHiddenFilename($this);
警报(“我的:”+文件名);
});
函数GetHiddenFilename(obj){
返回$(obj.val();
}
-
A1.PNG
复制
细节
下载
改名
删除
2017-03-03 10:4166 KB
$(obj.parent().prevAll().first().val()代码>=>$(obj.parent().sibbines().first().val()代码>
$('.CssRename')。单击(函数(){
var fileName=GetHiddenFilename(此文件);
警报(“我的:”+文件名);
});
函数GetHiddenFilename(obj){
返回$(obj.parent().sibbines().first().val();
}
-
A1.PNG
复制
细节
下载
改名
删除
2017-03-03 10:4166 KB
如何单击隐藏字段?我没有单击隐藏字段,我使用$('.CssRename')。单击(函数()以单击重命名按钮我刚刚注意到它在下面提供了一个演示hanks!它似乎应该是“return$(obj).parent().prevAll().last().val()”,对吗?使用prevAll()时,第一个元素是last()?是,因为它是上一个元素,类为leftli
的div是上一个元素,如文档中所述,获取匹配元素集中每个元素的所有前一个同级,可选地通过选择器进行筛选。
其中隐藏输入是最后一个前一个同级@HelloCWThanks!您确定结果正确吗兄弟姐妹的数量()已订购?不客气,我想是的,但我在文档中找不到。您可以添加$(obj).parent().sides(“:hidden”).first().val();而不关心订购。