I'm trying to run the following code
$("select#shipping_rates_drop").change(function(){ var selectedText = $(this + "option:selected").text(); var ship = thisvalue.split("£"); var subtotal = $("ul#deliveryList").attr("class"); var ship = ship[1]; var totalcost = parseFloat(subtotal)+parseFloat(ship); $(".wrap.form-section h1 span").html(" <small>Total </small> £"+totalcost); $("input[name=itemamt]").val(subtotal); $("input[name=shippingamt]").val(ship); checklistCheck1(); });
I want to get the text from the selected value on change. ex. UPS Worldwide Express - £89.57 then the code splits the value to get me the actual number of cost.
But console.log throws up the following
Error: Syntax error, unrecognized expression: [object HTMLSelectElement]option:selected
in jquery.min.js (line 2)
So im assuming I've done something wrong here and hoping someone could help out
Or to get the text of the option, use text() : $var = jQuery("#dropdownid option:selected"). text(); alert ($var);
function myNewFunction(element) { var text = element. options[element. selectedIndex]. text; // ... }
Answer: Use the jQuery :selected Selector You can use the jQuery :selected selector in combination with the val() method to find the selected option value in a select box or dropdown list.
the line should be
var selectedText = $(this).find("option:selected").text();
Change
var thisvalue = $(this + "option:selected").text();
to
var thisvalue = $("select#shipping_rates_drop option:selected").text();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With