Итак, в основном у меня есть это меню выбора/выпадающего меню, которое я использую AJAX для извлечения и создания, но когда выбран параметр (так onChange), я хочу, чтобы он перенаправлялся!AJAX Generated Select не перенаправляет
Хотя это все еще не работает, я не получаю ошибок при попытке, и пытался использовать методы отладки alert(), но предупреждения не вызываются.
JQuery
$("#schoolMenu").change(function() {
option = $("#schoolMenu option:selected").text();
alert(option);
if(option != "- Please Select -") {
window.location = "http://www.itmustbecollege.com/pics/pics-from-"+$("#schoolMenu option:selected").val();
}
});
Это то, что используется для вызова AJAX
// // Populate школы //
$("#state").change(function() {
option = $("#state option:selected").text();
if($(this).attr("class") == "menu") {
if(option != "- Please Select -") {
$.ajax({
type: "GET",
url: "/includes/functions.php",
data: "f=school&p="+option+"&m=yes",
success: function(msg) {
$("#fSchool").html("<p style=\"margin-left: 20px;\">Select School:</p>"+ msg);
$("#fSchool").show();
$("#school").focus();
}
});
}
else {
$("#fSchool").html("");
$("#fSchool").hide();
}
}
else {
if(option != "- Please Select -") {
$.ajax({
type: "GET",
url: "/includes/functions.php",
data: "f=school&p="+option,
success: function(msg) {
$("#fSchool").html(msg);
$("#fSchool").show();
$("#school").focus();
}
});
}
else {
$("#fSchool").html("");
$("#fSchool").hide();
}
}
});
Он загружает отлично, если вы смотрите на http://www.itmustbecollege.com/quotes/ на том баре, где вы можете «сортировать по» популярного | Новые | Категория | Школа
Если вы наведите курсор мыши на школу, появится раскрывающееся меню, выберите любую страну, а другая появится, хотя когда это изменится, ничего не происходит.
здесь является PHP для этого второго выпадающего
// Get College List
function getCollege($state, $m = "no", $l = "no") {
// Displays Schools
if($m == "yes") {
$options = '<select id="schoolMenu" name="school"><option value="select" selected="selected">- Please Select -</option>';
}
else if($l == "yes" || $l == "yes2") {
$options = '';
}
else {
$options = '<select name="school"><option value="select" selected="selected">- Please Select -</option>';
}
$listArray = split("\|\\\\", $list);
for($i=0; $i < count($listArray); $i++) {
if($m == "yes") {
$options .= '<option value="'. trim(titleReplace($listArray[$i])) .'">'. trim($listArray[$i]) .'</option>';
}
else if($l == "yes") {
$options .= '<li><a href="/quotes/quotes-from-'. titleReplace($listArray[$i]) .'" title="'. trim($listArray[$i]) .' Quotes">'. trim($listArray[$i]) .'</a></li>';
}
else if($l == "yes2") {
$options .= '<li><a href="/pics/pics-from-'. titleReplace($listArray[$i]) .'" title="'. trim($listArray[$i]) .' Pictures">'. trim($listArray[$i]) .'</a></li>';
}
else {
$options .= '<option value="'. trim($listArray[$i]) .'">'. trim($listArray[$i]) .'</option>';
}
}
echo $options .='</select>';
return false;
}
любая помощь будет здорово!
РЕДАКТИРОВАТЬ: Кроме того, у меня есть эти выпадающие меню, немного странные, и когда вы наводите курсор на любую другую ссылку «сортировать по», они исчезают, это проблема с «сортировкой по школе», потому что в первом окне выбора отображается список вверх, и если вы идете и выбираете школу, то каким-то образом плаваете по другой ссылке, которая исчезает, любая помощь в том, как отложить это или исправить эту небольшую проблему?
Живой или делегат не работает в этом случае? –
@Caspar: Хороший вопрос. Кажется, что это работает, но в любом случае, поскольку это специальный обработчик, предназначенный для одного конкретного элемента, я лично предпочел бы привязывать его напрямую. – user113716