Skip to content

Instantly share code, notes, and snippets.

@lokialice
Last active March 7, 2017 05:05
Show Gist options
  • Save lokialice/8100a7bc46959b83c6d2a30fcf9f0bf1 to your computer and use it in GitHub Desktop.
Save lokialice/8100a7bc46959b83c6d2a30fcf9f0bf1 to your computer and use it in GitHub Desktop.
call ajax in asp.net webforms
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="DemoPhoneBook.demo._default" %>
<style>
table, th, td {
border: 1px solid black;
}
</style>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js" type="text/javascript"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.13/jquery-ui.min.js" type="text/javascript"></script>
<link href="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.13/themes/redmond/jquery-ui.css" rel="stylesheet"
type="text/css" />
<script>
$(function () {
var dialog
function addUser() {
var personalID = $('#personalID').val();
var name = $('#name').val();
var birthday = $('#birthday').val();
var idnumber = $('#idnumber').val();
var dataValue = "{ id: '" + personalID + "', name: '" + name + "', birthday: '" + birthday + "', idNumber:'" + idnumber + "' }";
$.ajax({
type: "POST",
url: "default.aspx/UpdatePersonal",
data: dataValue,
contentType: "application/json; charset=utf-8",
dataType: "json",
async: "true",
success: function (response) {
alert("Update Sucessfully!");
dialog.dialog("close");
location.reload(true);
}
});
}
dialog = $("#dialog-form").dialog({
autoOpen: false,
height: 400,
width: 350,
modal: true,
buttons: {
"Update": addUser,
Cancel: function () {
dialog.dialog("close");
}
},
});
$(".btn-Edit").live("click", function (event) {
event.preventDefault();
Title = "Edit User";
$("#dialog-form").dialog("open");
var bid = this.id; // button ID
var personalid = $(this).closest("tr")
.find(".lbPersonId")
.text();
var birthday = $(this).closest("tr")
.find(".lbBirthday")
.text();
var name = $(this).closest("tr")
.find(".lbName")
.text();
var number = $(this).closest("tr")
.find(".lbIDNumber")
.text();
$('#personalID').val(personalid);
$('#name').val(name);
$('#birthday').val(birthday);
$('#idnumber').val(number);
});
});
</script>
</head>
<body>
<div id="dialog-form" title="Edit User">
<p class="validateTips">All form fields are required.</p>
<form>
<div>
<label for="personalID">PersonID</label>
<input type="text" name="personalID" id="personalID" disabled="disabled" class="text ui-widget-content ui-corner-all">
</div>
<div>
<label for="name">Name</label>
<input type="text" name="name" id="name" class="text ui-widget-content ui-corner-all">
</div>
<div>
<label for="birthday">Birthday</label>
<input type="text" name="birthday" id="birthday" class="text ui-widget-content ui-corner-all">
</div>
<div>
<label for="idnumber">IDNumber</label>
<input type="text" name="idnumber" id="idnumber" class="text ui-widget-content ui-corner-all">
</div>
</form>
</div>
<form id="form1" runat="server">
<asp:ScriptManager ID="Scriptmanager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<a href="/demo/detail.aspx">Create new</a>
<table class="ui-widget ui-widget-content">
<tr class="ui-widget-header">
<th>PersonID</th>
<th>Name</th>
<th>Birthday</th>
<th>IDNumber</th>
<th></th>
</tr>
<asp:Repeater runat="server" ID="rePerson" OnItemCommand="rePerson_ItemCommand1">
<ItemTemplate>
<tr>
<td>
<asp:Label ID="lbPersonId" CssClass="lbPersonId" runat="server" Text=""></asp:Label>
</td>
<td>
<asp:Label ID="lbName" CssClass="lbName" runat="server" Text=""></asp:Label>
</td>
<td>
<asp:Label ID="lbBirthday" CssClass="lbBirthday" runat="server" Text=""></asp:Label>
</td>
<td>
<asp:Label ID="lbIDNumber" CssClass="lbIDNumber" runat="server" Text=""></asp:Label>
</td>
<td>
<asp:LinkButton ID="btEdit" CssClass="btn-Edit" runat="server">Edit</asp:LinkButton>
<asp:LinkButton ID="btDelete" CommandName="Delete" OnClientClick=" return ConfirmDelete()" runat="server">Delete</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
<script>
function ConfirmDelete() {
var x = confirm("Are you sure you want to delete?");
if (x)
return true;
else
return false;
}
</script>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using PhoneBookDB.BLL;
using PhoneBookDB.CL;
using System.Data;
using PhoneBookDB.DAL;
using PhoneBookDB.DAL.Bases;
using System.Web.Services;
namespace DemoPhoneBook.demo
{
public partial class _default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//PersonService personSvc = new PersonService();
//TList<Person> lst = personSvc.GetAll();
//Person p = personSvc.GetByPersonID(new Guid());
////p.EntityState = EntityState.
//PersonParameterBuilder pb = new PersonParameterBuilder();
//pb.AppendEquals(PersonColumn.Name, "Nam");
//lst = personSvc.Find(pb.GetParameters());
//personSvc.Save(p);
PersonService personSvc = new PersonService();
rePerson.DataSource = personSvc.GetAll();
rePerson.ItemDataBound += rePerson_ItemDataBound;
rePerson.DataBind();
}
}
void rePerson_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemIndex < 0) return;
Person dr = (Person)e.Item.DataItem;
Label lbPersonId = (Label)e.Item.FindControl("lbPersonId");
Label lbName = (Label)e.Item.FindControl("lbName");
Label lbBirthday = (Label)e.Item.FindControl("lbBirthday");
Label lbIDNumber = (Label)e.Item.FindControl("lbIDNumber");
LinkButton btEdit = (LinkButton)e.Item.FindControl("btEdit");
LinkButton btDelete = (LinkButton)e.Item.FindControl("btDelete");
btEdit.CommandArgument = dr.PersonID.ToString();
btDelete.CommandArgument = dr.PersonID.ToString();
lbPersonId.Text = dr.PersonID.ToString();// dr["PersonID"].ToString();
lbName.Text = dr.Name.ToString();// dr["Name"].ToString();
lbBirthday.Text = dr.Birthday.ToString();// dr["Birthday"].ToString();
lbIDNumber.Text = dr.IDNumber.ToString();// dr["IDNumber"].ToString();
}
protected void rePerson_ItemCommand1(object source, RepeaterCommandEventArgs e)
{
try
{
if (e.CommandName == "Edit")
{
string url = "/demo/Detail.aspx?id=" + e.CommandArgument;
Response.Redirect(url);
}
else if (e.CommandName == "Delete")
{
try
{
TransactionManager transactionManager = ConnectionScope.ValidateOrCreateTransaction();
try
{
PersonService personSvc = new PersonService();
Person ps = personSvc.GetByPersonID(new Guid(e.CommandArgument.ToString()));
PhoneNumService phoneSvc = new PhoneNumService();
IList<PhoneNum> listPhoneNum = phoneSvc.GetByPersonID(ps.PersonID);
foreach (PhoneNum pn in listPhoneNum)
{
phoneSvc.Delete(pn);
}
personSvc.Delete(ps);
transactionManager.Commit();
}
catch
{
if (transactionManager != null && transactionManager.IsOpen)
{
transactionManager.Rollback();
}
}
Response.Redirect("/demo/default.aspx", false);
}
catch (Exception ex) { }
}
}
catch { }
}
[System.Web.Services.WebMethod]
public static void UpdatePersonal(string id, string name, DateTime birthday, int idNumber)
{
try
{
bool checkData = false;
try
{
if (name.Trim() != "" && idNumber > 0)
{
checkData = true;
}
}
catch
{ }
if (checkData)
{
PersonService personSvc = new PersonService();
if (id == "") //create new
{
try
{
Person newPerson = new Person();
newPerson.Name = name.Trim();
newPerson.IDNumber = idNumber;
newPerson.Birthday = birthday;
personSvc.Save(newPerson);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
else //save
{
try
{
Person newPerson = personSvc.GetByPersonID(new Guid(id));
newPerson.Name = name.Trim();
newPerson.IDNumber = idNumber;
newPerson.Birthday = birthday;
personSvc.Save(newPerson);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment