با سلام
دوستان من توی پروژه Asp.net web form دارم از Web api استفاده میکنم و میخوام با استفاده از Ajax وقتی ایتم یک DropDownList عوض شد یک DropDownList دیگه با تغییرات اون Bind بشه ولی هر چه تلاش کردم به جواب نرسیدم کدهام رو میزارم لطفا راهنمای کنید.
این کدهای Ajax
$('[id$=DropType]').change(function () { $.ajax({ url: '/WebApi/api/Menu/Fill?mytype=' + $('[id*=DropType]').val() + '', type: 'POST', dataType: 'application/json', success: function (data, textStatus, xhr) { alert(data); }, error: function (xhr, textStatus, errorThrown) { alert('Error in Operation'); } }); });
و این هم کدهای web api
public List<ListItem> Fill([FromUri]string mytype) { List<ListItem> list = new List<ListItem>(); DataView dv = new DataView(); dv = Menu.SelectAll().Tables[0].DefaultView; dv.RowFilter = "Type = '" + mytype + "'"; dv.Sort = "Title ASC"; list.Add(new ListItem { Value = "0", Text = "سر گروه" }); for (int i = 0; i < dv.Count; i++) { if (dv[i]["ParentID"].ToString() == "0") { list.Add(new ListItem { Value = dv[i]["ID"].ToString(), Text = dv[i]["Title"].ToString() }); } else { list.Add(new ListItem { Value = dv[i]["ID"].ToString(), Text = WriteParent(dv[i]["ParentID"].ToString()) + dv[i]["Title"].ToString() }); } } return list; } public string WriteParent(string id) { string ParentText = ""; DataView dv = new DataView(); dv = Menu.SelectAll().Tables[0].DefaultView; dv.RowFilter = "ID = '" + id + "'"; dv.Sort = "Title ASC"; if (dv.Count > 0) { ParentText += WriteParent(dv[0]["ParentID"].ToString()) + dv[0]["Title"].ToString() + " ==> "; } dv.Dispose(); return ParentText; }
خواهش میکنم راهنمایی کنید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)