我是Jquery的新手。我有一个上传表单,当上传内容时,上传按钮会改变以下类:
<a class="upload-button upload buy" id="upload-button"><span>Upload a document</span></a>
要:
<a class="upload-button buy white" id="upload-button"><span>Upload a document</span></a>
我曾尝试编写一个函数,如果文件已经上传(按钮中的类已更改),则会添加一个名为“done”的div。
这是我到目前为止所得到的:
$('a#upload-button').ready(function() {
if ($(this).hasClass('white')) {
$('#three')
.append('<div class="done rotateone wiggler"></div>')
.addClass('grey');
}
})
我不确定为什么它不起作用。请有人帮忙吗?
答案 0 :(得分:0)
你应该这样做(如果你想在页面加载时检查一个按钮是否有一个类,否则只需取出if
部分并将其放在你需要的地方
//this is a shorthand methot for $(document).ready()
//you should use this to wait for the dom to load
$(function(){
//if the link has the class
if($('a#upload-button').hasClass('white')){
//append the button
$('#three')
.append('<div class="done rotateone wiggler"></div>')
.addClass('grey');
}
});
编辑 - 你应该修改你的脚本
function verifyFileUploadState(up) {
if ($(".file-title").length == 0) {
$("#upload-button span").html("Upload a document");
$("#upload-button").addClass("upload");
$("#upload-button").removeClass("white");
} else {
$("#upload-button span").html("Upload another document");
$("#upload-button").removeClass("upload");
$("#upload-button").addClass("white");
$('#three')
.append('<div class="done rotateone wiggler"></div>')
.addClass('grey');
}
up.refresh();
}