0

我有一个这样的html:

<!doctype html>
<html manifest="">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
</head>
<body>
<div data-role="page" id="Find">
    <div data-theme="b" data-role="header" data-position="fixed">
        <h3>test</h3>
    </div>
    <div data-role="content">
        <form action="handler.php" id="findForm" >
            <div data-role="fieldcontain">
                <fieldset data-role="controlgroup">
                    <label for="textinputf1"> keyword: </label> <input id="textinputf1"  name="keyword" placeholder="" value="" type="text" />
                </fieldset>
            </div>
            <input type= "submit" data-theme="g" value="Find" />
        </form>
    </div>
</div>

<div data-role="page" id="Results">
    <div data-theme="b" data-role="header" data-position="fixed">
        <h3>Results</h3>
    </div>
    <div data-role="content">
        <ul data-role="listview" data-filter="true">
            <li><a href="">HEllo</a></li>
            <li><a href="">Bye</a></li>
        </ul>
    </div>
</div>

</body>
</html>​

像这样的 handler.php:

<?php 
//...
if( let's say false ) {
    header("location:.");
}else{
    header("location:./#Results");
    //header("Refresh:0;url=/application/test/#Results");   
}

使用 header+refresh 或 header+location,当我提交表单时,我在 url 栏中看到: .../handler.php?keyword=test

但我没有被重定向,如果我刷新页面(从 url 栏或 F5 中按回车键)然后我会到达#Results,但不会自动

知道如何解决吗?

4

2 回答 2

1

jquery mobile 可能使用 ajax 来处理您的表单。您应该为表单切换 ajax 处理

jQuery Mobile 表单示例

在你的位置也放一个空间

Location: whereyouwanttogo
于 2012-05-16T10:48:18.403 回答
0

在不刷新的情况下查看传递的参数的方法是放置 data-ajax="false"

如果您想使用 ajax,请不要直接调用 url。使用 AJAX 调用这些,并在 JavaScript 的帮助下基于对#Results 的响应重定向。

于 2012-05-18T12:42:17.137 回答