文本框(id:handle)没有通过AJAX提交的帖子传递数据。
形式:
<form method="post" accept-charset="utf-8" name="form1">
<LABEL for:="handle">Twitter Handle </LABEL>
<INPUT type="text" id="handle" value="@">
<input name="hidden_data" id='hidden_data' type="hidden"/>
</form>
我有一个按钮:
<input type="button" id="sharebutton" onclick="uploadEx()" value="Share" />
这是我的功能(uploadEx):
function uploadEx() {
var handle = document.getElementById('handle');
var canvas = document.getElementById("canvas");
var dataURL = canvas.toDataURL("image/png");
document.getElementById('hidden_data').value = dataURL;
var fd = new FormData(document.forms["form1"]);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'upload_data.php', true);
xhr.upload.onprogress = function(e) {
if (e.lengthComputable) {
var percentComplete = (e.loaded / e.total) * 100;
console.log(percentComplete + '% uploaded');
alert('Selfie Succesfully uploaded');
}
};
xhr.onload = function() {
};
xhr.send(fd);
};
我的图片(Canvas)被传递回upload_data.php并被处理。
文本框,句柄,没有任何内容作为POST传递。
我不知道错误在哪里。
答案 0 :(得分:0)
您的文字输入没有name
属性,添加它并且它应该有效:
<form method="post" accept-charset="utf-8" name="form1">
<LABEL for:="handle">Twitter Handle </LABEL>
<INPUT type="text" id="handle" name="mytext" value="@">
<input name="hidden_data" id='hidden_data' type="hidden"/>
</form>