按钮发布到当前地址

时间:2017-07-01 10:46:13

标签: java spring thymeleaf

我的表格有问题。当我使用按钮时,它使用post方法到当前地址而不是在表单中指定的地址。我不知道那种形式有什么问题。我真的很感激一些帮助。

<form th:action:="@{/shoppingCart/addItem}" method="post">
    <input hidden="hidden" th:value="*{book.id}"/><!--both name and value are taken care of by that syntax -->
    <div class="row" style="margin-top: 120px">
        <div class="col-xs-3">
            <a th:href="@{/bookshelf}">Back to book list. </a><br/>
            <img class="img-responsive shelf-book" th:src="#{adminPath}+@{/image/book/}+${book.id}+'.png'"/>
        </div>
        <div class="col-xs-9">
            <h3 th:text="${book.title}">Book Title</h3>
            <div class="row">
                <div class="col-xs-5">
                    <h5><strong>Author: </strong><span th:text="${book.author}"></span></h5>
                    <p><strong>Publisher: </strong><span th:text="${book.publisher}"></span></p>
                    <p><strong>Publication Date: </strong><span th:text="${book.publicationDate}"></span></p>
                    <p><strong>Language: </strong><span th:text="${book.language}"></span></p>
                    <p><strong>Category: </strong><span th:text="${book.category}"></span></p>
                    <p><strong><span th:text="${book.format}"></span></strong> : <span th:text="${book.numberOfPages}"></span> pages</p>
                    <p><strong>ISBN: </strong><span th:text="${book.isbn}"></span></p>
                    <p><strong>Shipping weight: </strong><span th:text="${book.shippingWeight}"></span> kg</p>
                </div>
                <div class="col-xs-5">
                    <div class="panel panel-default" >
                        <div class="panel-body">
                            <div class="row">
                            <div class="col-xs-6">
                                <h4>Our price: <span>$ <span style="color: #db3208;" th:text="${book.ourPrice}"></span></span> </h4>
                                <p>List price: <span>$ <span style="text-decoration: line-through" th:text="${book.listPrice}"></span></span> </p>
                                <p>You save: <span th:text="${#numbers.formatDecimal((book.listPrice - book.ourPrice), 0, 'COMMA', 2, 'POINT')}"></span> </p>
                                <span>Qty: </span>
                                <select>
                                    <option th:each="qty : ${qtyList}" th:value="${qty}" th:text="${qty}" ></option>
                                </select>
                            </div>
                            <div class="col-xs-6">
                                <h4 th:if="*{book.inStockNumber&gt;9}" style="color: green">In Stock;</h4>
                                <h4 th:if="*{book.inStockNumber&gt;0 and book.inStockNumber&lt;10}" style="color: green">Only <span th:text="${book.inStockNumber}"></span> left.</h4>
                                <h4 th:if="*{book.inStockNumber==0}" style="color: darkred">SOLD OUT.</h4>
                                <button type="submit" class="btn btn-warning" style="color: black; border: solid 1px">Add to cart</button>
                            </div>
                        </div>
                    </div>
                </div>
                </div>
            </div>
        </div>
        <hr style="color: black; height: 2px; width: 100%"/>
        <p th:utext="${book.description}"></p>
    </div>
</form>

使用按钮

后访问html代码
<!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="" />
    <meta name="author" content="" />
    <link rel="icon" href="../../favicon.ico" />

    <title>Bookstore</title>

    <!--Font Awesome-->
    <link rel="stylesheet" href="/lib/components-font-awesome/css/font-awesome.min.css" />

    <!-- Bootstrap core CSS -->
    <link href="/lib/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet" />

    <!-- Custom styles for this template -->
    <link href="/css/style.css" rel="stylesheet" />

</head>
<body>
<div>
<div class="page-top" style="width: 100%; height: 20px; background-color: #f46b42; margin-top: -15px"></div>

<!-- Static navbar -->
<nav class="navbar navbar-inverse">
    <div class="container-fluid">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="#">Bookstore</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
            <ul class="nav navbar-nav">

                <li class="dropdown">
                    <a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" href="/bookshelf">Books <span class="caret"></span></a>
                    <ul class="dropdown-menu">
                        <li><a href="/bookshelf">Browse the bookshelf</a></li>
                        <li><a href="#">Opening hours &#38; directions</a></li>
                        <li><a href="#">FAQ</a></li>

                    </ul>
                </li>
                <form class="navbar-form navbar-left">
                    <div class="form-group">
                        <input type="text" class="form-control" placeholder="Search" />
                    </div>
                    <button type="submit" class="btn btn-default">Submit</button>
                </form>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="/shoppingCart/cart">SHOPPING CART</a></li>
                <li><a href="/login">MY ACCOUNT</a></li>
                <li></li>
                <li></li>
            </ul>
        </div><!--/.nav-collapse -->
    </div><!--/.container-fluid -->
</nav>
</div>


<div class="container">
    <hr style="position: absolute; background-color: #333; z-index: -1; height: 6px; width: 100%; margin-top: 100px" />
    <div class="row">
        <div class="col-xs-8"><h2 class="section-headline"><span>Welcome guest.</span></h2> </div>
        <div class="col-xs-4"><img src="/image/logo.png" class="img-responsive" /></div>
    </div>

    <img src="/image/wood.png" class="img-responsive" style="margin-top: -75px" />


    <form th:action:="@{/shoppingCart/addItem}" method="post">
        <input hidden="hidden" value="1" /><!--both name and value are taken care of by that syntax -->
        <div class="row" style="margin-top: 120px">
            <div class="col-xs-3">
                <a href="/bookshelf">Back to book list. </a><br />
                <img class="img-responsive shelf-book" src="http://localhost:8081/adminportal/image/book/1.png" />
            </div>
            <div class="col-xs-9">
                <h3>tre</h3>
                <div class="row">
                    <div class="col-xs-5">
                        <h5><strong>Author: </strong><span>wss</span></h5>
                        <p><strong>Publisher: </strong><span>wew</span></p>
                        <p><strong>Publication Date: </strong><span>5666</span></p>
                        <p><strong>Language: </strong><span>polish</span></p>
                        <p><strong>Category: </strong><span>Biography</span></p>
                        <p><strong><span>Hardcover</span></strong> : <span>66</span> pages</p>
                        <p><strong>ISBN: </strong><span>667</span></p>
                        <p><strong>Shipping weight: </strong><span>7.0</span> kg</p>
                    </div>
                    <div class="col-xs-5">
                        <div class="panel panel-default">
                            <div class="panel-body">
                                <div class="row">
                                <div class="col-xs-6">
                                    <h4>Our price: <span>$ <span style="color: #db3208;">10.0</span></span> </h4>
                                    <p>List price: <span>$ <span style="text-decoration: line-through">12.0</span></span> </p>
                                    <p>You save: <span>2.00</span> </p>
                                    <span>Qty: </span>
                                    <select>
                                        <option value="1">1</option>
                                        <option value="2">2</option>
                                        <option value="3">3</option>
                                        <option value="4">4</option>
                                        <option value="5">5</option>
                                        <option value="6">6</option>
                                        <option value="7">7</option>
                                        <option value="8">8</option>
                                        <option value="9">9</option>
                                        <option value="10">10</option>
                                    </select>
                                </div>
                                <div class="col-xs-6">

                                    <h4 style="color: green">Only <span>8</span> left.</h4>

                                    <button type="submit" class="btn btn-warning" style="color: black; border: solid 1px">Add to cart</button>
                                </div>
                            </div>
                        </div>
                    </div>
                    </div>
                </div>
            </div>
            <hr style="color: black; height: 2px; width: 100%" />
            <p><p>hhgvhhu</p></p>
        </div>
    </form>
</div>
<div>
    <!-- Bootstrap core JavaScript
================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="/lib/jquery/dist/jquery.min.js"></script>
    <script src="/lib/bootstrap/dist/js/bootstrap.min.js"></script>


</div>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

看起来你有一个错字:

$a = [
        ['value' => 1, 'text' => '1 Hour'],
        ['value' => 12, 'text' => '12 Hour'],
        ['value' => 24, 'text' => '1 Day'],
    ];

$b = [
        ['value' => 12],    
    ];

function comparator($a, $b)
{
    return $a['value'] - $b['value'];
}

$c = array_udiff($a, $b, 'comparator');
print_r($c);

:=