В моем кодировании [кодирование, которое я использовал и работал, когда не использовал кнопку gridview] всегда возвращает мое confirmValue как False.
Мне было интересно, почему это так. Всплывающее окно полностью игнорирует часть «Да» или «Нет» "INPUT"
при запросе Continue with File Deletion?"
строки кодирования. Он просто автоматически переходит прямо в мой код Vb.net со значением подтверждения как false.
Есть предложения, почему?
JavaScript
<script type = "text/javascript">
function onConfirm() {
var confirm_value = document.createElement("INPUT");
confirm_value.type = "hidden";
confirm_value.name = "confirm_value";
if (confirm("Continue with File Deletion?")) {
confirm_value.value = "Yes";
//alert("Yes was Selected. Article Selected Will Be Deleted!")
} else {
confirm_value.value = "No";
//alert("No was Selected. Article Will Not Be Deleted.")
}
document.forms[0].appendChild(confirm_value);
}
</script>
Вид сетки:
<asp:TemplateField HeaderText = "Delete File">
<ItemTemplate >
<asp:button ID = "btnDelete" cssClass = "submit-btn small" Text = "Delete" CommandArgument = '<%# Eval("Value") %>' runat = "server" OnClientClick = "OnConfirm()" OnClick = "DeleteFile" />
</ItemTemplate>
<ItemStyle cssClass="grid_padding" />
</asp:TemplateField>
Vb.net для удаления строки / файла в строке при нажатии кнопки
Protected Sub DeleteFile(ByVal sender As Object, ByVal e As EventArgs)
Dim confirmValue As String = Request.Form("confirm_value")
If confirmValue = "Yes" Then
Response.Write("<script language=""javascript"">alert('Yes was Selected. File Will Be Deleted!');</script>")
Dim filePath As String = CType(sender, Button).CommandArgument
File.Delete(filePath)
Response.Redirect(Request.Url.AbsoluteUri)
Else
Response.Write("<script language=""javascript"">alert('No was Selected. File Will Not Be Deleted.');</script>")
End If
End Sub