我正在配置 blueimp 以在单击发布按钮时上传图像。我的问题是它没有调用 $('#fileupload').fileupload
函数。我已经包含了以下 javascript 文件。以下是我的代码,请看看有什么问题。
<head>
<script type="text/javascript" src="../../js/jquery.min.js"></script>
<script type="text/javascript" src="../../js/jquery-ui.js"></script>
<script type="text/javascript" src="../../js/jQuery-File-Upload-master/js/jquery.fileupload.js"></script>
<script type="text/javascript" src="../../js/jQuery-File-Upload-master/js/vendor/jquery.ui.widget.js"></script>
<script type="text/javascript" src="../../js/jQuery-File-Upload-master/js/jquery.iframe-transport.js"></script>
<script type="text/javascript">
$('#fileupload').fileupload({
dataType : 'json',
url : "ownmessages",
add: function (e, data) {
$('#post') .click(function () {
$('#post').text('Uploading...');
data.submit();
});
},
done: function (e, data) {
$('#post').text('Upload finished.');
}
});
</script>
</head>
<body>
<s:form action="ownmessages" enctype="multipart/form-data" method="post">
<s:textarea rows="2" cols="40" name="message" id="message1"></s:textarea><br>
<s:select name="msg_visibility" id="msg_visibility" list="#{'public':'Public', 'friends':'Friends','me':'Me only'}" value="public"/>
<input id="fileupload" type="file" name="user_post_image[]" data-url="ownmessages"/>
<input type="button" value="Post" id="post" />
</s:form>
</body>
最佳答案
您需要等待文档完成加载,然后才能尝试选择任何元素。 jQuery .ready()
方法等待文档对象模型 (DOM) 完成加载,然后运行脚本。
$(document).ready(function() {
$('#fileupload').fileupload({
dataType : 'json',
url : "ownmessages",
add: function (e, data) {
$('#post') .click(function () {
$('#post').text('Uploading...');
data.submit();
});
},
done: function (e, data) {
$('#post').text('Upload finished.');
}
});
});
除了使用 .ready()
,您也可以只将函数传递给 jQuery。
$(function() {
// will run after DOM is loaded
});
关于jquery - $ ('#fileupload' ).fileupload 函数未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14788066/