0
我創建了一個上傳方法,通過調用webservice從javascript自動上傳文件。由於這是一個自動上傳,我想添加一個刪除按鈕,以允許用戶刪除他們上傳的文件。所以這個過程是:從javascript中刪除表格的相應行
- 選擇文件,當onchange事件被觸發文件上傳通過調用Web服務(這是自動上傳)
- Webservice的響應是兩個字符串變量組成的對象
- 在成功我正在創建一行,通過返回的響應填充它並將其添加到現有的表中。
- 我想爲每行添加一個刪除按鈕,通過捕獲該行的相應值來刪除上傳的文件。所以我的問題是:當我點擊該行中的刪除按鈕時,如何捕獲適當的值?
下面是我的javascript代碼:
function UploadFiles() {
if (window.FormData !== undefined) {
var fileUpload = $("#FileUpload1").get(0);
var files = fileUpload.files;
var fileData = new FormData();
fileData.append(files[0].name, files[0]);
fileData.append('username', 'Test');
$.ajax({
url: 'MyWebservice.asmx/UploadImages',
type: "POST",
contentType: false,
processData: false,
data: fileData,
dataType: "text",
success: function (response) {
var xmlDoc = new DOMParser().parseFromString(response, "application/xml");
var objElementSuccess = xmlDoc.getElementsByTagName("Success")[0];
var textElementSuccess = objElementSuccess.childNodes[0];
var objElementUpload = xmlDoc.getElementsByTagName("UploadedURL")[0];
var textElementUpload = objElementUpload.childNodes[0];
var tableBody = document.getElementById("Tab_UploadedFiles");
tableBody.style.display = "inline";
var tr = document.createElement('TR');
var tdSuccess = document.createElement('TD');
var tdUploadedFiles = document.createElement('TD');
var tdButtonDelete = document.createElement('TD');
tdSuccess.appendChild(document.createTextNode(textElementSuccess.nodeValue));
tdUploadedFiles.appendChild(document.createTextNode(textElementUpload.nodeValue));
tdButtonDelete.style.textAlign = "center";
// here I am adding the delete button .. what should I do here?
// tdButtonDelete.innerHTML = '<input value ="Delete File" onclick="DeleteUploadedFile()" type="button" />';
tr.appendChild(tdSuccess);
tr.appendChild(tdUploadedFiles);
tr.appendChild(tdButtonDelete);
tableBody.appendChild(tr);
},
error: function (err) { alert(err.statusText); }
});
} else {
alert("FormData is not supported.");
}
}
下面是我的表:
<table id="Tab_UploadedFiles" class="Tab_UploadedFiles">
<tr>
<th>
File Name
</th>
<th>
Status
</th>
<th>
Delete Uploaded File
</th>
</tr>
</table>
,我怎麼能抓住這個唯一編號的onclick?我怎麼能通過DeleteUploadedFile()函數在我的情況? –
再看看我的答案,我用一個例子來編輯它,你如何解決這個問題。 –
此外,我強烈建議你瀏覽一下jQuery庫,看看它如何讓你的生活更輕鬆。用原生JS做這些東西是屁股疼痛(從個人經歷來講; -P) –