@model HelloWorldMvcApp.SampleViewModel
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap 101 Template</title>
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
.field-validation-error {
<div class="col-md-6 col-md-offset-3">
<h4>Example Adding items to collection dynamically</h4><br>
@using (Html.BeginForm())
@Html.LabelFor(m => m.Name)
@Html.TextBoxFor(model => model.Name, new {@class="form-control"})
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#TransactionModal">
<li>TransactionDate: Date here</li>
<li>TransactionAmount: Amount here</li>
<button type="button" class="btn btn-success submit">Save</button>
<div class="modal fade" id="TransactionModal" tabindex="-1" role="dialog" aria-labelledby="TransactionModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Create transaction</h4>
<label class="col-md-3 control-label">Date</label>
@Html.TextBoxFor(a => a.CustomerTransaction.TransactionDate, new { @class = "form-control Date", @id = "Transaction_Date", @name = "Transaction.Date", @type ="date" })
<div class="form-group NoBottomPad">
<label class="col-md-3 control-label">Amount</label>
@Html.TextBoxFor(a => a.CustomerTransaction.TransactionAmount, new { @class = "form-control Amount", @id = "Transaction_Amount", @name = "Transaction.Amount"})
<div class="modal-footer">
<div class="hinttext" style="font-size: smaller; text-align: left; margin-left: -10px; display: table-cell; vertical-align: bottom; ">
<button class="btn" id="TransactionModalCancelButton" name="TransactionModalCancelButton" type="button" data-dismiss="modal">Cancel</button>
<button class="btn-default btn" id="AddTransaction" name="AddTransaction" type="button" disabled>Add</button>
<div class="alert alert-warning fade">
<img src="http://entechprod.blob.core.windows.net/dotnetfiddle/morpheus.jpg" style="max-width:100%;"/><br/><br/>
<strong><span class="alert-content"></span></strong>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
<script src="//ajax.aspnetcdn.com/ajax/mvc/4.0/jquery.validate.unobtrusive.min.js"></script>
<script type="text/javascript">
function openAlert(txt) {
$('.alert-content').text(txt);
$('.alert').addClass('in');
$('.alert').removeClass('in');
var answer = '@Model.Answer';
if(answer && answer != '')
$('#Question').change(closeAlert);
$('#Question').keyup(closeAlert);
// This is the save button
var save = document.getElementById("AddTransaction");
var cancel = document.getElementById("TransactionModalCancelButton");
// This is the text fields
var date = document.getElementById("Transaction_Date");
var amount = document.getElementById("Transaction_Amount");
// This is the transaction list
var transList = document.getElementById("CustomerTransactions");
var container = document.getElementById("TransactionResult");
$(date).change(function () {
if ($(this).val() !== "" && $(amount).val() !== "") {
$(save).prop('disabled', false);
$(save).prop('disabled', true);
$(amount).keyup(function () {
if ($(this).val() !== "" && $(date).val() !== "") {
$(save).prop('disabled', false);
$(save).prop('disabled', true);
/*$('.submit').click(function(){
url: '@Url.RouteUrl(new{ action="GetAnswer", controller="Home"})',
data: {Answer: '', Question: $('#Question').val()},
contentType: "application/json; charset=utf-8",
success: function(resp) {
$("#AddTransaction").click(function () {
var TransactionDate = $("#Transaction_Date").val();
var TransactionAmount = $("#Transaction_Amount").val();
$.post('@Url.Action("AddTransactionItem","Investigation")', { CustomerTransaction: { TransactionDate: TransactionDate, TransactionAmount: TransactionAmount } })
$("#TransactionResult").text(data.CustomerTransactions);
$("#TransactionModal").modal('hide');
function (jqXhr, textStatus, errorThrown) {
alert("create", jqXHR.responseText, 'error');