Я пробовал много способов выполнить это, но этого не происходит .. вот в чем дело ... У меня есть данные, отображаемые в строках таблицы, каждая строка имеет свой идентификатор, представляющий идентификатор человека, которого я хочу удалить. Я использую jquery для сбора этого идентификатора из строки, в которой находится моя кнопка, вот код, как я это делаю, его работу я просто пишу, чтобы вы могли понять, чего я пытаюсь достичь:
var customer_id = $(this).parents("tr").attr('id');
Когда я тестирую его с помощью оповещения, оно работает, вот сложная часть, которую я просто застрял. У меня есть файл с именем Delete.aspx, вот его содержимое
<%
string p = Request ["value"];
int pInt = Int32.Parse (p);
var dataContext = new CustomersDataContext();
var customer = from m in dataContext.Customers
where m.id == pInt
select m;
dataContext.Customers.DeleteAllOnSubmit(customer);
dataContext.SubmitChanges();
%>
Теперь я пытаюсь отправить значения Delete.aspx, чтобы удалить человека с определенным идентификатором, и он работает, набрав в браузере Delete.aspx? Value = 7, он удаляет человека с идентификатором 7. Теперь вот где я действительно застрял. Из Default.aspx я пытаюсь добраться до Delete.aspx и передать идентификатор человека, используя jquery, например:
$(".btn-delete").click(function() {
var answer = confirm("If you press OK, this customer will be deleted?")
var customer_id = $(this).parents("tr").attr('id');
if (answer) {
$.ajax({
type: "POST",
url: "Delete.aspx",
data: "{value: '" + customer_id + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
AjaxSucceeded(msg);
},
error: AjaxFailed
});
$(this).parents("tr").animate({ backgroundColor: "#fbc7c7" }, "fast")
.animate({ opacity: "hide" }, "slow")
return false;
}
else {
alert("Customer has not been deleted!")
}
});
function AjaxSucceeded(result) {
alert(result.d);
}
function AjaxFailed(result) {
alert(result.status + ' ' + result.statusText);
}
});
Итак, теперь результат, когда я нажимаю кнопку и подтверждаю удаление, я получаю «500 Internal server error», это исправимо или есть какой-то другой простой способ сделать то же самое?
Спасибо
Я изменил код ... но все же мне нужна помощь ... Я чувствую себя так близко, что, по крайней мере, укажу мне правильное направление ..
вот мой Delete.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Second_Question
{
public partial class Delete : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string p = Request["value"];
int pInt = Int32.Parse(p);
var dataContext = new CustomersDataContext();
var customer = from m in dataContext.Customers
where m.id == pInt
select m;
dataContext.Customers.DeleteAllOnSubmit(customer);
dataContext.SubmitChanges();
}
}
}
вот мой Delete.aspx
есть идеи? спасибо