我已經構建了兩個函數,它們分開工作(當另一個被刪除時)但不一起工作。總體目標是,當一個人選擇他們希望每頁看到的結果數量時,這會重新加載頁面,並將該值放入url中,然後使用get in php進行檢索;然後在新頁面上將下拉菜單中的選定值設置爲觸發重新加載的值。衝突的jquery函數
jQuery的
$(document).ready(function(){
//the first section takes the value from the php script and then selects the option if it's not null - this works fine on it's own
var data = "<?php echo $rp;?>";
if (data){
$("#bo2 option[value="+data+"]").attr('selected', 'selected');
}
//this too works fine on it's own but not with the above
$('#bo2').change(function(){
var opt = $(this).val();
var url = "sales.php?results=";
var newurl = url + opt;
window.location.replace(newurl);
});
});
在一起時,第一工作正常,因爲它重新選擇如果說,我把?results=50
sales.php
後的正確值,但隨後jQuery的觸發重載不起作用。我究竟做錯了什麼?
只是爲了澄清。第一頁稱爲「sales.php」,下拉菜單中當前選擇的值爲「10」,25和50爲其他選項。當我點擊另一個數字時,jquery不起作用。但是,我應該在網址中鍵入結尾「?result = 50」,例如,它可以工作;下拉菜單現在顯示50;當我點擊十,網址更新,並下拉顯示十也;那麼問題在於,它們似乎只是在開始時纔會發生衝突,就像它一樣。
似乎問題可能涉及jQuery如何處理php。舉個例子,其工作原理如下第一個例子,然後第二這不:
1)
$(document).ready(function(){
$('#bo2').change(function(){
var opt = $(this).val();
var url = "sales.php?results=";
var newurl = url + opt;
window.location.replace(newurl);
});
});
2)這種變化的功能但是不會觸發因爲包含的頁面重載php定義的jquery變量。
$(document).ready(function(){
var data = "<?php echo $rp;?>";
$('#bo2').change(function(){
var opt = $(this).val();
var url = "sales.php?results=";
var newurl = url + opt;
window.location.replace(newurl);
});
});