我有一个从服务器接收数据并显示dropzone.js表单的函数,
function requestData() {
// showDropzone(); // displaying dropzone from here works,
$.post("/userids/",null, function(data, status) {
jsonarray = JSON.parse(data);
showDropzone(); // here, it calls the function but dropzone is not displayed
});
}
function showDropzone(){
$("#content").html('<form id="dropzone" action="/target" class="dropzone"></form>');
}
当我从post方法中调用它时,Dropzone不会显示,但是当我从外部调用它时它会显示。我不知道造成这种情况的原因是什么,没有错误或警告,我已尝试使用所有可能的dropzone配置,但即使forceFallback设置为true也不起作用。
编辑: 这是完整的HTML,
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript" src="dropzone.js"></script>
</head>
<body>
<div id="container">
<div id="content"></div>
</div>
<script type="text/javascript">
$(document).ready(function(){
requestData();
});
function requestData() {
// showDropzone(); // displaying dropzone from here works,
$.post("/userids/",null, function(data, status) {
jsonarray = JSON.parse(data);
showDropzone(); // here, it calls the function but dropzone is not displayed
});
}
function showDropzone(){
$("#content").html('<form id="dropzone" action="/target" class="dropzone"></form>');
}
</script>
</body>
</html>
答案 0 :(得分:0)
:D我打赌表格#dropzone添加到#content,但你没有看到它...因为它是空的! (里面没有输入):D看看我的小提琴!
将您的代码更改为
$("#content").html('<form id="dropzone" action="/target" class="dropzone"><input type="text"/></form>');