I want to find sum of values in textboxes and then display the SUM in another textbox and also STORE THE SUM IN DATABASE . Using the code below it succesfully find sum and display it in another textbox However it does not store the sum in database.
I checked the database, it shows the value NULL is entered in TotalAvgHours field of database.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(TimePeriodViewModel timePeriodVM)
{
var timeperiod = new TimePeriod
{
TotalAvgHours = timePeriodVM.TimePeriod.TotalAvgHours,
}
View
Total <td>
@Html.TextBox("TotalAvgHours", "", "{0:c}", new { disabled = "disabled", @class = "form-control", id = "res2" })
<script type="text/javascript">
function sum2() {
var one = document.getElementById('a2').value || "0";
var two = document.getElementById('b2').value || "0";
var three = document.getElementById('c2').value || "0";
var four = document.getElementById('d2').value || "0";
var five = document.getElementById('e2').value || "0";
var six = document.getElementById('f2').value || "0";
var seven = document.getElementById('g2').value || "0";
var eight = document.getElementById('h2').value || "0";
var nine = document.getElementById('i2').value || "0";
var ten = document.getElementById('j2').value || "0";
var eleven = document.getElementById('k2').value || "0";
var twelve = document.getElementById('l2').value || "0";
var thirteen = document.getElementById('m2').value || "0";
var fourteen = document.getElementById('n2').value || "0";
var fifteen = document.getElementById('o2').value || "0";
var result = parseFloat(one) + parseFloat(two) + parseFloat(three) + parseFloat(four) + parseFloat(five) + parseFloat(six) + parseFloat(seven) +
parseFloat(eight) + parseFloat(nine) + parseFloat(ten) + parseFloat(eleven) + parseFloat(twelve) + parseFloat(thirteen) + parseFloat(fourteen) + parseFloat(fifteen);
if (!isNaN(result)) {
document.getElementById('res2').value = result;
}
}
window.onload = sum2;
</script>
</td>
</tr>
TimePeriodViewModel
public class TimePeriodViewModel
{
public IEnumerable<Personnel> Personnels { get; set; }
//public Personnel Personnel { get; set; }
public int PersonnelID { get; set; }
public IEnumerable<DailyRegister> DailyRegisters { get; set; }
public DailyRegister DailyRegister { get; set; }
public TimePeriod TimePeriod { get; set; }
}
TimePeriod
public partial class TimePeriod
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public TimePeriod()
{
this.DailyRegisters = new HashSet<DailyRegister>();
}
public int TimePeriodID { get; set; }
public int PersonnelID { get; set; }
public System.DateTime StartDate { get; set; }
public System.DateTime EndDate { get; set; }
public Nullable<bool> IsSignedAvgAgreement { get; set; }
public Nullable<bool> IsSignedTimeSheet { get; set; }
public string SignedAvgBy { get; set; }
public string SignedTimeSheetBy { get; set; }
public Nullable<System.DateTime> SignedTimeSheetDate { get; set; }
public Nullable<decimal> TotalAvgHours { get; set; }
public Nullable<decimal> TotalTimeSheetHours { get; set; }
public Nullable<decimal> TotalOvertime { get; set; }
}
dbContextoperation the code you shared so far? Did you shared the full code? In addition please shareTimePeriodViewModelclass details as well.