</head>
<body>
<nav class="navbar navbar-dark bg-primary navbar-expand navbar-dark flex-column">
- <h2 class="navbar-brand">Demo: Multidimensional Map With Dynamic Binding</h2>
+ <h1 class="navbar-brand">Demo: Multidimensional Map With Dynamic Binding</h1>
</nav>
<main class="container mt-5">
<form action="#" th:action="@{/}" th:object="${form}" method="get">
- <div class="card" th:each="card : *{cards.entrySet()}">
- <div class="card-header"><h1 th:text="|Card #${card.key}|">Card #X</h1></div>
+ <div class="card my-3" th:each="card : *{cards.entrySet()}">
+ <div class="card-header"><h2 th:text="|Card #${card.key}|">Card #X</h2></div>
<div class="card-body">
<div class="card-text">
<div class="form-group" th:each="row : ${card.value.entrySet()}">
<button type="submit" name="remove" class="btn btn-primary" th:value="|${card.key}:${row.key}|">Remove</button>
</div>
<div class="form-group">
- <input type="text" th:field="*{row[__${card.key}__]}" />
+ <input type="text" th:field="*{names[__${card.key}__]}" />
<button type="submit" name="add" th:value="${card.key}" class="btn btn-primary">Add Row</button>
</div>
</div>
</div>
</div>
</div>
- <p><button type="submit" name="card" value="add" class="btn btn-primary">Add Card</button></p>
+ <div class="card my-3">
+ <div class="card-header"><h2>Add A New Card...</h2></div>
+ <div class="card-body">
+ <div class="card-text">
+ <input type="text" th:field="*{names[0]}" />
+ <button type="submit" name="card" value="add" class="btn btn-primary my-3">Add Card</button>
+ </div>
+ </div>
+ </div>
</form>
</main>
</body>