1
我有一個名爲states.php的頁面。每個狀態都會隱藏,直到您從下拉菜單中選擇它。然後顯示選定的狀態區分並隱藏其他區域。這完美地在states.php頁面上工作。嘗試通過onChange表單事件將訪問者發送到另一個頁面並打開特定的div
但是,我在網站上的每隔一頁上都有相同的表單。我希望能夠從say,home.php中選擇一個狀態,將它們重定向到states.php並打開正確的狀態div。
這裏的形式和HTML:
<div class="select"><span class="selectState">Select a State</span><span><form>
<select name="States" id="options" class="form-select">
<option value="state" selected="selected">- Select a State -</option>
<option value="1" >New York</option>
<option value="2" >New Jersey</option>
<option value="3" >Texas</option>
</select>
</form></span></div>
<!-- NY Map -->
<div id="state1" class="state stateShow">
NY CONTENT
</div>
<!-- NJ Map -->
<div id="state2" class="state stateShow">
NJ CONTENT
</div>
<!-- TX Map -->
<div id="state3" class="state stateShow">
TX CONTENT
</div>
而這裏的JavaScript的:
$(document).ready(function() {
function optionCheck() {
var i, len, optionVal, stateDiv,
selectOptions = document.getElementById("options");
for (i = 0, len = selectOptions.options.length; i < len; i++) {
optionVal = selectOptions.options[i].value;
stateDiv = document.getElementById("state" + optionVal);
if (!stateDiv) { continue; }
if (selectOptions.options[i].selected) {
stateDiv.className = "state stateShow";
} else {
stateDiv.className = "state";
}
}
}
document.getElementById("options").onchange = optionCheck;
});
和基本的CSS:
.state {
display: none;
}
.stateShow {
display:block;
}
任何幫助將不勝感激。
感謝
他們在選擇標籤。 href散列不起作用 – 2013-02-20 17:04:22
我編輯了我的回答,使用'window.location.hash.substring(1)'爲了從值的開始處移除散列。它現在應該工作。 – Divey 2013-02-20 17:16:00
仍然無法正常工作。我嘗試過這樣的目標之前,將目標states.php頁面,但只會去頁面,不打開具體的div。除非它是我忽略的東西。 – 2013-02-20 19:35:25