我已经填充了ASP.net下拉列表中使用AJAX现在我需要得到的Id在存储到在C#方法的数据库,(我使用LINQ)
这是我的webmethod
[WebMethod的()]
公共静态的ArrayList GetLanguageList()
{
ArrayList的lstArrLanguage =新的ArrayList();
IQueryable的< Common.Town> myList上=新SupplierBL()GetTowns()。
的foreach(在myList中Common.Town T)
{
字符串名称= t.Name;
字符串ID = t.TownId.ToString();
lstArrLanguage.Add(新列表项(姓名,身份证));
}
返回lstArrLanguage;
}
我的Test.aspx的code
< SCRIPT LANGUAGE =JavaScript的类型=文/ JavaScript的>
$(文件)。就绪(函数(){
$阿贾克斯({
键入:POST,
网址:Test.aspx的/ GetLanguageList
数据: '',
的contentType:应用/ JSON的;字符集= UTF-8,
数据类型:JSON,
成功:函数(MSG){
$(#ddlLanguage)空()追加($(<选项>< /选项>中)VAL([ - ])HTML(请选择)。)。
$每个(msg.d,函数(){
$('#<%=ddlLanguage.ClientID%>').append($("<option></option>").val(this['Value']).html(this['Text']));
});
},
错误:函数(){
警报(在处理您的请求时发生错误。);
}
});
});
&LT; / SCRIPT&GT;
解决方案
你不能选择的值从的DropDownList
如果您在添加选项的javaScript
。你可以尝试以下
串了selectedValue =的Request.Form [ddlLanguage.UniqueID]
这question可能也是有用的。
I had populated an ASP.net dropdown list with AJAX now I need to get the Id to store in into the database in a C# method, (I'm using LINQ)
This is my webmethod
[WebMethod()]
public static ArrayList GetLanguageList()
{
ArrayList lstArrLanguage = new ArrayList();
IQueryable<Common.Town> myList = new SupplierBL().GetTowns();
foreach(Common.Town t in myList)
{
string name = t.Name;
string id = t.TownId.ToString();
lstArrLanguage.Add(new ListItem(name, id));
}
return lstArrLanguage;
}
My test.aspx code
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$.ajax({
type: "POST",
url: "test.aspx/GetLanguageList",
data: '',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#ddlLanguage").empty().append($("<option></option>").val("[-]").html("Please select"));
$.each(msg.d, function () {
$('#<%=ddlLanguage.ClientID%>').append($("<option></option>").val(this['Value']).html(this['Text']));
});
},
error: function () {
alert("An error has occurred during processing your request.");
}
});
});
</script>
解决方案
You can't get selected value from DropDownList
if you adding options in javaScript
. You can try the following
string selectedValue = Request.Form[ddlLanguage.UniqueID];
This question may be useful also.