为什么人们把 javascript 放在代码后面?我认为拥有 100 个(见下文)这些内容是很丑陋的......是否有一些基本原因使得 javascript 在某些情况下必须位于后面的代码中?当它应该在 aspx 中时。 ??
// now we gotta recalc fields
szCalcBenefitsTotal += " CalcCostFromPct('" + tbSocialSecurityPercent3.ClientID + "', '" + tbSocialSecurity3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbMedicarePercent3.ClientID + "', '" + tbMedicare3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbHealthInsurancePercent3.ClientID + "', '" + tbHealthInsurance3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbLifeInsurancePercent3.ClientID + "', '" + tbLifeInsurance3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbVacationPercent3.ClientID + "', '" + tbVacation3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbSickLeavePercent3.ClientID + "', '" + tbSickLeave3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
szCalcBenefitsTotal += " CalcCostFromPct('" + tbRetirementPercent3.ClientID + "', '" + tbRetirement3.ClientID + "', '" + tbSalaryAdjusted3.ClientID + "');";
最佳答案
它很可能位于代码隐藏中,因为 javascript 是由 ASP.NET 代码动态生成的。这不是最好的方法,最好在适当的地方注入(inject)变量并使用静态 jscript 来作用于动态生成的变量。
我建议将您的 javascript 放入它自己的 .js 文件中,如果可能的话,不要弄乱您的 html 标记,否则将其放入 .aspx
编辑:(回答您的评论问题)
是的,您可以使用 <%= %>
执行相同的操作和<%# %>
在 ASP.NET 4.0 <%: %>
中。也可以构造类似 <asp:Repeater></asp:Repeater>
可用于循环列表/枚举,因此理论上您可以在 .aspx 中执行几乎所有操作
关于ASP.NET JavaScript。将其放在代码后面还是放在 .aspx 文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2925140/