用户点击combobox后重新加载页面(有一些规则)
我是javascript的新手,需要在用户点击combobox的选项后重新加载当前页面,但我有一些规则。
两个combobox:
0 1 2 3
规则:
- 用户在第一个combobox中单击“0”,重新加载到www.mypage.com?comboA=0。
- 用户点击第一个combobox中的“1”,将“0”替换为“1”并重新加载到www.mypage.com?comboA=1
- 用户点击第二个combobox中的“2”,连接并重新加载到www.mypage.com?comboA=1&comboB=2
- 用户点击第二个combobox中的“3”,将“2”替换为“3”并重新加载到www.mypage.com?comboA=1comboB=3
上述步骤需要按顺序完成。
function“刷新”和“刷新2”应该如何?
谢谢。
我不会直接向您提供代码,但我可以帮助您研究您的答案,以便您可以随时学习JavaScript。
您可以使用jQuery来帮助您,但特别是.change()函数来检测combobox是否已更改: http ://api.jquery.com/change/
要实际刷新页面或更改为其他页面,可以使用window.location函数将用户定向到页面。 JavaScript中的Window.location.href和Window.open()方法
要实际更改页面上的元素,而不重新加载页面,您可以使用jQuery ajax在需要时将更改发布到PHP。 http://api.jquery.com/jquery.ajax/
我希望这可以帮助您学习更多JavaScript
第一个函数只需要导航到一个相同的url,然后是?comboA=
然后是第一个参数,如下所示:
function Refresh(value) { URL = window.location.href.split("?")[0]; window.location.replace(URL + "?comboA=" + value); }
第二个函数必须保持?comboA=value
部分,以便它在第一个&
之后拆分:
function Refresh2(value) { URL = window.location.href.split("&")[0]; window.location.replace(URL + "&comboB=" + value); }
在javascript中尝试以下代码
function Refresh() { var e = document.getElementById("comboA"); var selectedOption = e.options[e.selectedIndex].value; if(selectedOption == "0") { // your logic goes here } else if (selectedOption == "1") { // your logic goes here } }
为其他combobox编写相同的function。 我希望这些能帮助你! 如果您有任何疑问,请告诉我
你可以这样做:
var url = "http://www.mypage.com?" $("select[name=comboA]").on("change",function(){ window.location.href = url + $(this).attr("name") + "=" + $(this).val(); });
并为第二选择
var url2 = "http://www.mypage.com?comboA=1&" $("select[name=comboB]").on("change",function(){ window.location.href = url2 + $(this).attr("name") + "=" + $(this).val(); });