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