Sign In| Join
Get Help:Ask a Question in our Forums|Report a Bug|More Help Resources
Last post Jan 06, 2012 06:08 AM by JavedBoqo
All-Star
16826 Points
3684 Posts
Jan 03, 2012 08:15 AM|LINK
You could have fired button postback in Success callback function. Did you try that?
Member
145 Points
144 Posts
Jan 04, 2012 05:34 AM|LINK
well after validation(using jquery) I have called server side page as shown below:
<script type="text/javascript"> $(document).ready(function() { $("div#divcontrols :input").attr("disabled", true); var v = jQuery("#aspnetForm").validate({ errorLabelContainer: $(".result"), wrapper: "li", rules: { <%=txtname.UniqueID %>: { required: true } }, messages: { <%=txtname.UniqueID %>: { required: "Please enter name" } }, submitHandler: function(form) { document.Form1.action='frmRegion.aspx'; document.Form1.submit(); } }); }); });
Jan 04, 2012 08:34 AM|LINK
You've not posted your full code.
Please check this link, which will guide you.
Jan 04, 2012 09:37 AM|LINK
frmRegion.aspx <%@ Page Title="" Language="C#" MasterPageFile="~/master1.Master" AutoEventWireup="true" CodeBehind="frmRegion.aspx.cs" Inherits="autovalleyWB.forms.frmRegion" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <table> <tr><td colspan="2" class="result errorcontainer"></td></tr> <tr><td colspan="2" valign="top" style="text-align:center"><span class="heading">Region</span></td></tr> <tr> <td style="vertical-align:top"> <div> <asp:TreeView ID="TreeView1" runat="server" CssClass="tview" onselectednodechanged="TreeView1_SelectedNodeChanged"> </asp:TreeView> </div><asp:Label ID="lbl" runat="server" Text=""></asp:Label> </td> <td valign="top" class="rightContents"> <table id="tbloperations"> <tr><td> <div> <img alt="" src="../resources/images/new.png" class="operations" title="New" /><input type="button" id="btnnew" name="btnnew" class="MakeSumitToLink" value="New" accesskey="N" title="New(Alt+N)" onclick="fEnableDisableControls('save')" /> <img alt="" src="../resources/images/edit.png" class="operations" title="Edit" /><input type="button" id="btnedit" name="btnedit" class="MakeSumitToLink" value="Edit" accesskey="I" title="Edit(Alt+I)" onclick="fEditRecord()" /> <img alt="" src="../resources/images/save.png" class="operations" title="Save" /><input type="submit" id="btnsave" name="btnsave" class="MakeSumitToLink" value="Save" accesskey="S" title="Save(Alt+S)" disabled="disabled" /> <img alt="" src="../resources/images/delete.png" class="operations" title="Delete" /><input type="button" id="btndelete" name="btndelete" class="MakeSumitToLink" value="Delete" accesskey="X" title="Delete(Alt+X)" onclick="fDelete()" /> <img alt="" src="../resources/images/undo.png" class="operations" title="Undo" /><input type="button" id="btnundo" name="btnundo" class="MakeSumitToLink" value="Undo" accesskey="U" title="Undo(Alt+U)" disabled="disabled" onclick="fEnableDisableControls('undo')" /> </div> </td></tr> <tr> <td> <div id="divcontrols"> <table id="tbldetail"> <tr><td><label>Code:</label></td> <td><input runat="server" type="text" id="txtcode" name="txtcode" value="" class="textBox" tabindex="1" readonly="readonly"/></td> </tr> <tr><td><label>Name:</label></td> <td><input runat="server" type="text" id="txtname" name="txtname" value="" class="textBox"/> </td> </tr> </table> </div> </td> </tr> </table> </td> </tr> </table> <div style="display:none"><input type="hidden" id="hdSelectedID" class="SelectedID" value="" /></div> <script type="text/javascript"> $(document).ready(function() { $("div#divcontrols :input").attr("disabled", true); var v = jQuery("#aspnetForm").validate({ errorLabelContainer: $(".result"), wrapper: "li", rules: { <%=txtname.UniqueID %>: { required: true } }, messages: { <%=txtname.UniqueID %>: { required: "Please enter name" } }, submitHandler: function(form) { document.Form1.action='frmRegion.aspx'; document.Form1.submit(); //__doPostBack('RecordSave'); //$("#aspnetForm").submit(); /*var name=$("#<%= txtname.ClientID %>").val(); $.ajax({ type: 'POST', //url: '../wsOperation.asmx/T', url: 'frmRegion.aspx/Test', data: '{"name":"' + name + '"}', contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { if (msg.d) { alert("Successfully added new item"); } }, error: function () { alert("Error! Try again..."); } });//*/ /*jQuery(form).ajaxSubmit({ target: ".result", //beforeSubmit: showRequest, success: function(msg) { if (msg == '') { $('.result').html('<div class="success">Request executed successfully !</div>'); setTimeout("window.location.reload(true)", 2000); } else $('.result').html('<div class="Failure">' + msg + '</div>'); }, clearForm: false, resetForm: false });//*/ } }); }); </script> </asp:Content> frmRegion.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using BLL; using System.Web.Services; namespace autovalleyWB.forms { public partial class frmRegion : System.Web.UI.Page { Region objBll = new Region(); DataTable dtGlobal; string Status = string.Empty; public void te() { } protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString.ToString() != string.Empty) { if (Request.QueryString["action"] == constants.STATUS_OK) { lbl.Text = constants.STATUS_OK; } else { lbl.Text = constants.STATUS_ERROR; } } if(Request.HttpMethod.ToString().ToUpper()=="POST") //expect when call from javascript HttpMethod should be POST { string redirectURL = "/forms/frmRegion.aspx?action="; redirectURL+=(RecordSave()==constants.STATUS_OK)?constants.STATUS_OK:constants.STATUS_ERROR; if (redirectURL.Contains(constants.STATUS_ERROR)) { lbl.Text = constants.ERROR; } else { Response.Redirect(redirectURL); } } FillTreeView(); } #region User Defined Methods private void FillTreeView() { dtGlobal = new DataTable(); dtGlobal= objBll.GetList_Region(); try { TreeView1.Nodes.Clear(); TreeNode nodeParent = new TreeNode("Region List", "0"); TreeNode nodeChild; foreach (DataRow dr in dtGlobal.Rows) { nodeChild = new TreeNode(dr[0].ToString(), dr[1].ToString()); nodeParent.ChildNodes.Add(nodeChild); } TreeView1.Nodes.Add(nodeParent); } catch { } } private string RecordSave() { objBll.Name = txtname.Value.ToString(); Status=(objBll.RegionAdd() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; if (Status == constants.STATUS_OK) { objBll.CurrentLoggedInUserId = int.Parse(Session["CurrentLogUserID"].ToString()); objBll.logAction = constants.ACTION_NEW; objBll.logFormName = "REGION"; objBll.logPCName = constants.CURRENT_PC_NAME; objBll.SaveUserLog(); } return Status; } private string RecordUpdate() { objBll.Id = int.Parse(txtcode.Value.ToString()); objBll.Name= txtname.Value.ToString(); return (objBll.RegionUpdate() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; } private string RecordDelete() { objBll.Id = int.Parse(txtcode.Value.ToString()); return (objBll.RegionDelete() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; } #endregion protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { } } }
Jan 04, 2012 10:25 AM|LINK
You do something like below :
$(document).ready(function () { var frm = document.forms.aspnetForm; $(frm).validate({ onsubmit: false }); $("#btnSave").click(function (evt) { if ($(frm).valid()) SaveSettings(); evt.preventDefault(); }); }); function SaveSettings() { $.ajax({ //Your code here }); }
Please refer link in my previous post.
Jan 04, 2012 11:05 AM|LINK
now in SaveSettings function i have code this but can't succeed to call server side method Test()
function SaveSettings() { $.ajax({ type: 'POST', url: 'frmRegion.aspx/Test', data: '{}', contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { if (msg.d) { alert("Successfully added new item"); } }, error: function () { alert("Error! Try again..."); } }); }
Jan 04, 2012 11:18 AM|LINK
Could you put alert in SaveSettings and check?
Jan 04, 2012 11:42 AM|LINK
yes it works when put alert in SaveSettings()
Jan 04, 2012 12:05 PM|LINK
Now open firebug, check NET tab to see your Ajax Request. See what error are you getting? and try to resolve it.
Jan 04, 2012 12:09 PM|LINK
Its empty in firebug NET Tab. Now no alert is showing as well
nilsan
All-Star
16826 Points
3684 Posts
Re: Ajax Submit Issue
Jan 03, 2012 08:15 AM|LINK
You could have fired button postback in Success callback function. Did you try that?
JavedBoqo
Member
145 Points
144 Posts
Re: Ajax Submit Issue
Jan 04, 2012 05:34 AM|LINK
well after validation(using jquery) I have called server side page as shown below:
<script type="text/javascript"> $(document).ready(function() { $("div#divcontrols :input").attr("disabled", true); var v = jQuery("#aspnetForm").validate({ errorLabelContainer: $(".result"), wrapper: "li", rules: { <%=txtname.UniqueID %>: { required: true } }, messages: { <%=txtname.UniqueID %>: { required: "Please enter name" } }, submitHandler: function(form) { document.Form1.action='frmRegion.aspx'; document.Form1.submit(); } }); }); });nilsan
All-Star
16826 Points
3684 Posts
Re: Ajax Submit Issue
Jan 04, 2012 08:34 AM|LINK
You've not posted your full code.
Please check this link, which will guide you.
JavedBoqo
Member
145 Points
144 Posts
Re: Ajax Submit Issue
Jan 04, 2012 09:37 AM|LINK
frmRegion.aspx <%@ Page Title="" Language="C#" MasterPageFile="~/master1.Master" AutoEventWireup="true" CodeBehind="frmRegion.aspx.cs" Inherits="autovalleyWB.forms.frmRegion" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <table> <tr><td colspan="2" class="result errorcontainer"></td></tr> <tr><td colspan="2" valign="top" style="text-align:center"><span class="heading">Region</span></td></tr> <tr> <td style="vertical-align:top"> <div> <asp:TreeView ID="TreeView1" runat="server" CssClass="tview" onselectednodechanged="TreeView1_SelectedNodeChanged"> </asp:TreeView> </div><asp:Label ID="lbl" runat="server" Text=""></asp:Label> </td> <td valign="top" class="rightContents"> <table id="tbloperations"> <tr><td> <div> <img alt="" src="../resources/images/new.png" class="operations" title="New" /><input type="button" id="btnnew" name="btnnew" class="MakeSumitToLink" value="New" accesskey="N" title="New(Alt+N)" onclick="fEnableDisableControls('save')" /> <img alt="" src="../resources/images/edit.png" class="operations" title="Edit" /><input type="button" id="btnedit" name="btnedit" class="MakeSumitToLink" value="Edit" accesskey="I" title="Edit(Alt+I)" onclick="fEditRecord()" /> <img alt="" src="../resources/images/save.png" class="operations" title="Save" /><input type="submit" id="btnsave" name="btnsave" class="MakeSumitToLink" value="Save" accesskey="S" title="Save(Alt+S)" disabled="disabled" /> <img alt="" src="../resources/images/delete.png" class="operations" title="Delete" /><input type="button" id="btndelete" name="btndelete" class="MakeSumitToLink" value="Delete" accesskey="X" title="Delete(Alt+X)" onclick="fDelete()" /> <img alt="" src="../resources/images/undo.png" class="operations" title="Undo" /><input type="button" id="btnundo" name="btnundo" class="MakeSumitToLink" value="Undo" accesskey="U" title="Undo(Alt+U)" disabled="disabled" onclick="fEnableDisableControls('undo')" /> </div> </td></tr> <tr> <td> <div id="divcontrols"> <table id="tbldetail"> <tr><td><label>Code:</label></td> <td><input runat="server" type="text" id="txtcode" name="txtcode" value="" class="textBox" tabindex="1" readonly="readonly"/></td> </tr> <tr><td><label>Name:</label></td> <td><input runat="server" type="text" id="txtname" name="txtname" value="" class="textBox"/> </td> </tr> </table> </div> </td> </tr> </table> </td> </tr> </table> <div style="display:none"><input type="hidden" id="hdSelectedID" class="SelectedID" value="" /></div> <script type="text/javascript"> $(document).ready(function() { $("div#divcontrols :input").attr("disabled", true); var v = jQuery("#aspnetForm").validate({ errorLabelContainer: $(".result"), wrapper: "li", rules: { <%=txtname.UniqueID %>: { required: true } }, messages: { <%=txtname.UniqueID %>: { required: "Please enter name" } }, submitHandler: function(form) { document.Form1.action='frmRegion.aspx'; document.Form1.submit(); //__doPostBack('RecordSave'); //$("#aspnetForm").submit(); /*var name=$("#<%= txtname.ClientID %>").val(); $.ajax({ type: 'POST', //url: '../wsOperation.asmx/T', url: 'frmRegion.aspx/Test', data: '{"name":"' + name + '"}', contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { if (msg.d) { alert("Successfully added new item"); } }, error: function () { alert("Error! Try again..."); } });//*/ /*jQuery(form).ajaxSubmit({ target: ".result", //beforeSubmit: showRequest, success: function(msg) { if (msg == '') { $('.result').html('<div class="success">Request executed successfully !</div>'); setTimeout("window.location.reload(true)", 2000); } else $('.result').html('<div class="Failure">' + msg + '</div>'); }, clearForm: false, resetForm: false });//*/ } }); }); </script> </asp:Content> frmRegion.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using BLL; using System.Web.Services; namespace autovalleyWB.forms { public partial class frmRegion : System.Web.UI.Page { Region objBll = new Region(); DataTable dtGlobal; string Status = string.Empty; public void te() { } protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString.ToString() != string.Empty) { if (Request.QueryString["action"] == constants.STATUS_OK) { lbl.Text = constants.STATUS_OK; } else { lbl.Text = constants.STATUS_ERROR; } } if(Request.HttpMethod.ToString().ToUpper()=="POST") //expect when call from javascript HttpMethod should be POST { string redirectURL = "/forms/frmRegion.aspx?action="; redirectURL+=(RecordSave()==constants.STATUS_OK)?constants.STATUS_OK:constants.STATUS_ERROR; if (redirectURL.Contains(constants.STATUS_ERROR)) { lbl.Text = constants.ERROR; } else { Response.Redirect(redirectURL); } } FillTreeView(); } #region User Defined Methods private void FillTreeView() { dtGlobal = new DataTable(); dtGlobal= objBll.GetList_Region(); try { TreeView1.Nodes.Clear(); TreeNode nodeParent = new TreeNode("Region List", "0"); TreeNode nodeChild; foreach (DataRow dr in dtGlobal.Rows) { nodeChild = new TreeNode(dr[0].ToString(), dr[1].ToString()); nodeParent.ChildNodes.Add(nodeChild); } TreeView1.Nodes.Add(nodeParent); } catch { } } private string RecordSave() { objBll.Name = txtname.Value.ToString(); Status=(objBll.RegionAdd() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; if (Status == constants.STATUS_OK) { objBll.CurrentLoggedInUserId = int.Parse(Session["CurrentLogUserID"].ToString()); objBll.logAction = constants.ACTION_NEW; objBll.logFormName = "REGION"; objBll.logPCName = constants.CURRENT_PC_NAME; objBll.SaveUserLog(); } return Status; } private string RecordUpdate() { objBll.Id = int.Parse(txtcode.Value.ToString()); objBll.Name= txtname.Value.ToString(); return (objBll.RegionUpdate() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; } private string RecordDelete() { objBll.Id = int.Parse(txtcode.Value.ToString()); return (objBll.RegionDelete() != 0) ? constants.STATUS_OK : constants.STATUS_ERROR; } #endregion protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { } } }nilsan
All-Star
16826 Points
3684 Posts
Re: Ajax Submit Issue
Jan 04, 2012 10:25 AM|LINK
You do something like below :
$(document).ready(function () { var frm = document.forms.aspnetForm; $(frm).validate({ onsubmit: false }); $("#btnSave").click(function (evt) { if ($(frm).valid()) SaveSettings(); evt.preventDefault(); }); }); function SaveSettings() { $.ajax({ //Your code here }); }Please refer link in my previous post.
JavedBoqo
Member
145 Points
144 Posts
Re: Ajax Submit Issue
Jan 04, 2012 11:05 AM|LINK
now in SaveSettings function i have code this but can't succeed to call server side method Test()
function SaveSettings() { $.ajax({ type: 'POST', url: 'frmRegion.aspx/Test', data: '{}', contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { if (msg.d) { alert("Successfully added new item"); } }, error: function () { alert("Error! Try again..."); } }); }nilsan
All-Star
16826 Points
3684 Posts
Re: Ajax Submit Issue
Jan 04, 2012 11:18 AM|LINK
Could you put alert in SaveSettings and check?
JavedBoqo
Member
145 Points
144 Posts
Re: Ajax Submit Issue
Jan 04, 2012 11:42 AM|LINK
yes it works when put alert in SaveSettings()
nilsan
All-Star
16826 Points
3684 Posts
Re: Ajax Submit Issue
Jan 04, 2012 12:05 PM|LINK
Now open firebug, check NET tab to see your Ajax Request. See what error are you getting? and try to resolve it.
JavedBoqo
Member
145 Points
144 Posts
Re: Ajax Submit Issue
Jan 04, 2012 12:09 PM|LINK
Its empty in firebug NET Tab. Now no alert is showing as well