对于我的应用程序,我需要合并一些下拉列表,以便根据这些列表中选择的不同值显示一些表格。但是当我在一个列表中选择一个值时,另一个填充该值的函数,我不知道该怎么做。
在我的应用程序中,我只使用这样的原始查询:
string requeteAppli ="select distinct CD_APPLI, ORDRE_APPLI from dbo.REF_APPLI where CD_APPLI != 'PNB' order by ORDRE_APPLI";
使用这样的函数执行它们:
public List<DataRow> executerRequete(string query)
{
//Initialisation d'une variable Liste contenant des lignes de données où seront récupérés les résultats de la requête suivante.
List<DataRow> liste = null;
//Création d'une variable de connection où sont stockés toutes les informations nécessaires à la connexion à la base de données.
//Ces informations sont stockées dans le fichier de config Web.config.
string connString = ConfigurationManager.AppSettings["REF_ConnectionString"];
//Création d'un objet instance de SqlConnection (classe permettant la connexion ouverte à une base de données) où est stocké le contenu de la variable connString.
using (SqlConnection conn = new SqlConnection(connString))
{
//Création d'un objet de commande permettant de spécifier comment la commande sera inteprétée, ici en commande de texte SQL avec CommandType.Text.
using (SqlCommand objCommand = new SqlCommand(query, conn))
{
//Création d'un objet de commande permettant de spécifier comment la commande sera inteprétée, ici en commande de texte SQL avec CommandType.Text.
objCommand.CommandType = CommandType.Text;
//Création d'un objet instance de DataTable qui va récupérer la résultat de la requête.
DataTable dt = new DataTable();
//Création d'un objet instance de SqlDataAdapter qui va effectuer le lien avec SQL Server afin de récupérer les données.
SqlDataAdapter adp = new SqlDataAdapter(objCommand);
//Ouverture de la connexion.
conn.Open();
//L'instruction FILL récupère les données de la source de données et les insère dans dt.
adp.Fill(dt);
//Vérification du contenu de dt.
if (dt != null)
{
//Remplissage de la liste.
liste = dt.AsEnumerable().ToList();
}
}
}
//Le résultat est retournée à l'action.
return liste;
}
问题出在这些查询上,我看过很多关于如何使用 ASP.NET MVC 和 jQuery 实现级联下拉列表的教程,但它不是这种查询风格,我完全对它们感到困惑,我不能改变它们。
我在这样的操作中得到了这些查询的结果:
var queries = new query();
var items = rq.executerRequete(requeteIndex);
queries.Query2 = (from i in items2
select new Suivi { CD_APPLI = i.Field<String>("CD_APPLI") }).ToList();
我的目标是拥有第一个应用程序列表,当用户选择一个值时,另一个包含某个日期(取决于所选应用程序)的列表填充功能。这是获取所选应用程序功能日期的查询:
var itemsDate = rq.executerRequete(requetePERIODE);
var periode = (from i in itemsDate
where i.Field<String>("CD_APPLI").Trim() == appli.Trim()
select new Suivi { PERIODE = i.Field<Int64>("PERIODE") });
我完全迷失了这些级联下拉列表,我真的需要你的帮助:/如果你需要代码,我可以给你这个,但即使我已经为这些列表尝试了一些解决方案,我也不能给你一个我的例子代码(javascript)因为它根本不起作用而且我做任何事情,我的代码只是很多废话......