我有一个表单,只要用户从Web表单的下拉列表中选择一个数字,它就会进行自动回发。自动回发运行下面的代码,该代码计算表格的编号。

屏幕截图:



问题是每次重新计算/自动回发时,屏幕上都会出现讨厌的闪烁。

还有另一种方法可以编码此代码以停止闪烁吗?

C#

protected void Page_Load(object sender, EventArgs e)
{

    int intNum1 = 0;
    int intNum2 = 0;
    int intNum3 = 0;
    int totalt = 0;

    intNum1 = int.Parse(ddlNoadults.SelectedValue);
    intNum2 = int.Parse(ddlNoseniors.SelectedValue);
    intNum3 = int.Parse(ddlNochildren.SelectedValue);

    totalt = (intNum1 * 10) + (intNum2 * 8) + (intNum3 * 6);

    tbTotal.Text = totalt.ToString();

}


问候

最佳答案

您可以使用jquery / javascript来实现。本教程how to start jquery将为您提供帮助。

$('#<%= ddlNoadults.ClientID &>', '#<%= ddlNoadults.ClientID &>',
'#<%=ddlNoadults.ClientID &>').change(function(){
        calculate();
});

function calculate(){
    num1 = parseInt($('#<%= ddlNoadults.ClientID &>').val());
    num2 = parseInt($('#<%= ddlNoseniors.ClientID &>').val());
    num3 = parseInt($('#<%= ddlNochildren.ClientID &>').val());
    totalt = (num1 * 10) + (num2 * 8) + (num3 * 6);
    $('#<%= tbTotal.ClientID &>').val(totalt)
}

$(document).ready(function(){
     calculate();
});

关于javascript - 如何使用自动回传进行计算,所以不会出现屏幕闪烁,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13198828/

10-13 00:30