C# Ratingcontrol提供Javascript:void(0)

C# Ratingcontrol提供Javascript:void(0),c#,asp.net,.net,ajaxcontroltoolkit,dom-events,C#,Asp.net,.net,Ajaxcontroltoolkit,Dom Events,由于缺少内联CSS样式表,我的基本测试评级控件出现了一些小问题,因此无法正常工作。当我单击另一个updatepanel中的按钮时,我尝试在updatepanel中动态添加一组评级控件。(这些面板都在父updatepanel中,我已经定义了触发器并将updatemode设置为conditional)。无论如何,当我单击按钮时,他会用分级控件更新updatepanel,但当我将鼠标悬停在这些控件上时,他总是显示0(当前分级),并且不会更改分级控件的星形图像(Filled Starting)。与我的问

由于缺少内联CSS样式表,我的基本测试评级控件出现了一些小问题,因此无法正常工作。当我单击另一个updatepanel中的按钮时,我尝试在updatepanel中动态添加一组评级控件。(这些面板都在父updatepanel中,我已经定义了触发器并将updatemode设置为conditional)。无论如何,当我单击按钮时,他会用分级控件更新updatepanel,但当我将鼠标悬停在这些控件上时,他总是显示0(当前分级),并且不会更改分级控件的星形图像(Filled Starting)。与我的问题相关的代码(两种方法):

protectedvoid imbformulier\u单击(对象发送方,ImageClickEventArgs e)
{
imbFormulier.Visible=false;
imbGebruikers.Visible=false;
imbModellen.Visible=假;
pnlGegevens1.Visible=false;
pnlGegevens2.Visible=true;
pnlNavigatie.Visible=true;
pnlEval.Visible=真;
//我们可以用一个公式来描述ddl中的单词,它可以用来表示对klasse的理解
List mijnformulieren=(List)会话[“mijnformulieren”];
IEnumerator枚举器=mijnformulieren.GetEnumerator();
evaluatieformilier meetegeen=新evaluatieformilier();
while(枚举数.MoveNext())
{
如果(((enumerator.Current.gebruikergeevaluerdid==ddlgebuikers.SelectedValue)和&(enumerator.Current.ModelID==Convert.ToInt32(ddlModellen.SelectedValue)))
{
MeeTeg偶数=枚举数.Current;
//在评估过程中,所有的事件都会发生
if(meetegeen.Tijdaangewerkt==0)
{
lblInfo.Text=“Evaluatie gestart van”+ddlGebruikers.SelectedItem.Text;
lblDatum.Text=“Evaluatie begonnen op:”+DateTime.Now.Date.ToString(“d/M/yyyy”)+“(Vandaag)”;
//数据库中的更新
会话[“aantalminutenaangewerkt”]=0;
会话[“aantalscondenanaangewerkt”]=0;
timTijdAanGewerkt.Enabled=true;
lblTijd.Visible=true;
}
其他的
{
lblInfo.Text=“Evaluatie verdergezet van”+ddlGebruikers.SelectedItem.Text;
lblDatum.Text=“Evaluatie laatst gewijzigd:+meetegeen.Tijdingevuld.ToString();
会话[“aantalminutenaangewerkt”]=meetegeen.Tijdaangewerkt;
会话[“aantalscondenanaangewerkt”]=0;
timTijdAanGewerkt.Enabled=true;
lblTijd.Visible=true;
}
}
}
//评级控制aanmaken voor elke标准

显示我的问题的列表,以便您自己查看:

我们最近遇到了相同的问题,问题是最新版本的AjaxControltoolkit似乎需要ToolkitScriptManager,而不是普通的ScriptManager

所以试着改变你的想法 asp:ScriptManager标记到 asp:ToolKitScriptManager或 ajax:ToolKitScriptManager 或者不管你的名字空间是什么

protected void imbformulier_Click(Object sender, ImageClickEventArgs e)
{
    imbFormulier.Visible = false;
    imbGebruikers.Visible = false;
    imbModellen.Visible = false;
    pnlGegevens1.Visible = false;
    pnlGegevens2.Visible = true;
    pnlNavigatie.Visible = true;
    pnlEval.Visible = true;    

    //kijken welk formulier moet ingevuld worden adhv de ddl's en dit meegeven aan de zelfgemaakte klasse
    List<EvaluatieFormulier> mijnformulieren = (List<EvaluatieFormulier>)Session["mijnformulieren"];
    IEnumerator<EvaluatieFormulier> enumerator = mijnformulieren.GetEnumerator();
    EvaluatieFormulier meetegeven = new EvaluatieFormulier();
    while (enumerator.MoveNext())
    {
        if (((enumerator.Current.GebruikergeevalueerdID == ddlGebruikers.SelectedValue) && (enumerator.Current.ModelID == Convert.ToInt32(ddlModellen.SelectedValue))))
        {
            meetegeven = enumerator.Current;
            //Eventueel tekst veranderen als er al was gewerkt aan een bepaalde evaluatie
            if (meetegeven.Tijdaangewerkt == 0)
            {
                lblInfo.Text = "Evaluatie gestart van " + ddlGebruikers.SelectedItem.Text;
                lblDatum.Text = "Evaluatie begonnen op: "+  DateTime.Now.Date.ToString("d/M/yyyy") + "(Vandaag)" ;
                //updaten in database
                Session["aantalminutenaangewerkt"] = 0;
                Session["aantalsecondenaangewerkt"] = 0;
                timTijdAanGewerkt.Enabled = true;
                lblTijd.Visible = true;
            }
            else
            {
                lblInfo.Text = "Evaluatie verdergezet van " + ddlGebruikers.SelectedItem.Text;
                lblDatum.Text = "Evaluatie laatst gewijzigd : " + meetegeven.Tijdingevuld.ToString();
                Session["aantalminutenaangewerkt"] = meetegeven.Tijdaangewerkt;
                Session["aantalsecondenaangewerkt"] = 0;
                timTijdAanGewerkt.Enabled = true;
                lblTijd.Visible = true;
            }
        }
    }

    //Rating controls aanmaken voor elke criteria
    List<AjaxControlToolkit.Rating> lijstratingcontrols = new List<AjaxControlToolkit.Rating>();

    Model modelmetdomeinen = new Model() ;
    IEnumerator<Model> modelenum = Database.laadModellenIn().GetEnumerator();
    while (modelenum.MoveNext())
    {
        if (modelenum.Current.ModelID == meetegeven.ModelID)
            modelmetdomeinen = modelenum.Current;
    }    

    //foreach (Domein domein in modelmetdomeinen.Domeins)
    //{
    //    foreach (Criterium criterium in domein.Criteriums)
    //    {
    //        AjaxControlToolkit.Rating ratingcontrol = new AjaxControlToolkit.Rating();
    //        ratingcontrol.ID = criterium.CriteriumNaam;
    //        ratingcontrol.StarCssClass = "ratingStar";
    //        ratingcontrol.EmptyStarCssClass = "emptyStarRating";
    //        ratingcontrol.WaitingStarCssClass = "emptyStarRating";
    //        ratingcontrol.FilledStarCssClass = "filledStarRating";
    //        ratingcontrol.Changed += new AjaxControlToolkit.RatingEventHandler(rating_Changed);
    //        ToolkitScriptManager1.RegisterAsyncPostBackControl(ratingcontrol);
    //        lijstratingcontrols.Add(ratingcontrol);
    //    }
    //}

    //Evaluatieform formulier = new Evaluatieform(meetegeven,lijstratingcontrols);
    Table evaluatietabel = new Table();
    int domeinteller =0;

    foreach (Domein domein in modelmetdomeinen.Domeins)
    {
        domeinteller++;
        if (domeinteller < 4)
        {
            TableRow domeinrij = new TableRow();
            TableCell domeintitel = new TableCell();
            domeintitel.Text = domeinteller + ". " + domein.DomeinNaam;
            domeintitel.BorderStyle = BorderStyle.None;
            domeinrij.Cells.Add(domeintitel);
            evaluatietabel.Rows.Add(domeinrij);
            foreach (Criterium criterium in domein.Criteriums)
            {
                int criteriumteller = 1;
                TableRow criteriumrij = new TableRow();
                TableCell criteriumtitel = new TableCell();
                TableCell opvulcell = new TableCell();
                TableCell ratingcell = new TableCell();

                criteriumtitel.BorderStyle = BorderStyle.None;
                opvulcell.BorderStyle = BorderStyle.None;
                ratingcell.BorderStyle = BorderStyle.None;

                criteriumtitel.Text = criteriumteller + ". " + criterium.CriteriumNaam;
                AjaxControlToolkit.Rating ratingcontrol = new AjaxControlToolkit.Rating();
                ratingcontrol.ID = criterium.CriteriumNaam;
                ratingcontrol.StarCssClass = "ratingStar";
                ratingcontrol.EmptyStarCssClass = "emptyStarRating";
                ratingcontrol.WaitingStarCssClass = "emptyStarRating";
                ratingcontrol.FilledStarCssClass = "filledStarRating";
                ratingcontrol.Changed += new AjaxControlToolkit.RatingEventHandler(rating_Changed);
                ratingcell.Controls.Add(ratingcontrol);
                ratingcell.Attributes.Add("runat", "server");
                ratingcell.Attributes.Add("onclick", "return false");

                criteriumrij.Cells.Add(opvulcell);
                criteriumrij.Cells.Add(criteriumtitel);
                criteriumrij.Cells.Add(ratingcell);

                evaluatietabel.Rows.Add(criteriumrij);
                criteriumteller++;
            }
        }
    }

    evaluatietabel.BorderStyle = BorderStyle.None;
    pnlEval.ContentTemplateContainer.Controls.Add(evaluatietabel);

    Session["formulieractief"] = true;
    pnlEval.Update();
    pnlGegevens1.Update();
    pnlGegevens2.Update();
}