Reputation: 21667
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
Upvotes: 45
Views: 98503
Reputation: 11
<select onchange="changeSelect($event)">
<option [value]="valor">Texto</option>
</select>
changeSelect(e: any) {
var indexSel = e.target.selectedIndex;
var label = e.srcElement[indexSel].label;console.log(label);
}
Upvotes: 0
Reputation: 3848
the line should be
var selectedText = $(this).find("option:selected").text();
Upvotes: 135
Reputation: 2660
Selected text value :
$('#selectBoxId').on('change',function(){
var optionsText = this.options[this.selectedIndex].text;
alert(optionsText);
});
Upvotes: 6
Reputation: 4048
Change
var thisvalue = $(this + "option:selected").text();
to
var thisvalue = $("select#shipping_rates_drop option:selected").text();
Upvotes: 7