我现在遇到一些问题:(我有一个要求物有所值的简短表格,而且还有一些jQuery验证可以计算出所选价格的20%,并减去从选定的价格开始,然后将其更新为空的span标签。
问题是,代码没有错(同一个块中的所有其他函数都有效),但这根本不起作用!
<select id="list"><option value="error">$-</option><option value="1">$1</option><option value="5">$5</option><option value="10">$10</option><option value="25">$25</option><option value="50">$50</option><option value="100">$100</option><option value="250">$250</option><option value="500">$500</option></select>
$<span id="jsprice"></span>
<script>
var price = $("#list :selected").val();
var earning = price-((price/100)*20);
$('#list').change(function(){
$('#jsprice').val(earning);
});
</script>
有谁知道这可能有什么问题?我尝试了.blur() .change()
和其他几个,并尝试了
$('#jsprice').val() = earning;
但我认为这是完全错误的,看看.text()是如何工作的。
非常感谢!任何回复都非常感谢:)
答案 0 :(得分:5)
Spans没有值 - 使用.text()
或.html()
设置起始和结束标记之间的内容。
您还需要获取选择的值并计算获得内部 change
回调函数的值,否则它只会反映选择的初始值
答案 1 :(得分:3)
$('#list').change(function(){
var price = $(this).val();
var earning = price-((price/100)*20);
$('#jsprice').text(earning);
});
这应该这样做。
的小提琴