我非常熱衷於在我的博客中使用此小部件。該腳本將搜索我的博客內容中的關鍵字,而無需切換頁面。替代Ajax類型POST通過GET方法不起作用
但是,我想如果我添加一個GET方法的搜索功能。例如,通過訪問domain.com/page-search.php?search=keyword
即時獲取適當的內容。
我試圖在腳本中替換type: "POST"
到type: "GET"
,但無濟於事。如果我使用jQuery自動提交$("test").Submit();
它可以工作,但會切換到移動頁面。所以我考慮它是如何失敗的。
我希望我的問題是清楚的。這是使用AJAX http://britha.com/iklan/cari.php?search=murah
我的腳本的例子謝謝。
<script type="text/javascript">
$(function() {
$(".search_button").click(function() {
var searchString = $("#search_box").val();
var data = 'search='+ searchString;
if(searchString) {
$.ajax({
type: "POST",
url: "searchResult.php",
data: data,
beforeSend: function(html) {
$("#results").html('');
$(".mySearch").html(searchString);
},
success: function(html){
$("#results").show();
$("#results").append(html);
}
});
}
return false;
});
});
</script>
<div id="container">
<div id="box_cari">
<form id="test" method="post" action="searchResult.php">
<input type="text" name="search" id="search_box" class='search_box'/>
<input type="submit" value="SEARCH" class="search_button" /><br />
</form>
</div>
<div>
<div id="results"></div>
</div>
</div>
UPDATE
我已經找到了解決這一問題。 我更改此代碼:
$(".search_button").click(function() {
是:
<?php
if(isset($_GET['search'])) {
$osearch = $_GET['search'];
echo "var control = $(document).ready";
}
else {
echo "var control = $('.search_button').click";
}
?>
control(function() {
並增加其價值是搜索:
<input type="text" name="search" id="search_box" class='search_box' value="<?php echo htmlentities($osearch, ENT_QUOTES, 'UTF-8'); ?>"/>
這與我的預期相符完美謝謝@ DelightedD0D – Norax
謝謝你的代碼對我來說是正確的,但是如果他們可以解決,結果沒什麼問題。 如果我單擊SUBMIT double,則該值將翻倍。這可以克服什麼?示例屏幕截圖:http://i.stack.imgur.com/Hrfmt.png – Norax
@Norax查看更新,將'$ results.append(html).show();改爲'$ results.html(html).show ();' – DelightedD0D