I have 3 drop down boxes and a go button. I need to goto a URL that is built based on what is selected in the 3 URL boxes - here is an example of my code.
<form>
<select class="dropdown" id="dd1" style="margin-right:10px;width:130px">
<option>http://</option>
<option>ftp://</option>
<option>https://</option>
</select>
<select class="dropdown" id="dd2" style="margin-right:10px;width:130px">
<option>google</option>
<option>yahoo</option>
<option>bbc</option>
<option>hotmail</option>
</select>
<select class="dropdown" id="dd3" style="width:130px;margin-right:20px">
<option>.com</option>
<option>.net</option>
<option>.co.uk</option>
</select>
<input type="submit" name="button" id="button" value="Go!">
</form>
So, for example, if a user selects http:// + yahoo + .net - then hits a "Go" button, they would be sent to http://yahoo.net or if the user selects https// + hotmail +.com then they are sent to https://hotmail.com
Is there some jQuery or Javascript code that would detect the selections from the dropdowns, then built the correct URL and goto it when the "Go" button is pressed?
Thanks Zach
Something like this?
window.location.href = $('#Dropwdown_1').val()+$('#Dropwdown_2').val()+$('#Dropwdown_3').val();
Get the values of the dropdowns
var searcher = document.getElementById("ddlSearch");
var searchDomain =searcher.options[searcher.selectedIndex].text;
Same for the other two
Then concatenate strings using the +
var url = searchProtocol + searchDomain + searchTopLevel;
The go to the page:
location.href= url;
@zach
This should be simple.
While the other answers work... I would prefer handling it in this sort of fashion (using jQuery):
$("form").on("submit", function(e) {
// Define our global url array
var url = [];
// Prevent the form from processing
e.preventDefault();
// Loop through the drop down fields, storing the value of each into our "url" array
$(this).find(".dropdown").each(function() {
url.push($(this).val());
});
// Change the page location
window.location = url.join("");
});
var d1 = $("#dd1").find(":selected").attr("value");
var d2 = $("#dd2").find(":selected").attr("value");
var d3 = $("#dd3").find(":selected").attr("value");
location.href = d1+d2+d3+"";
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.