我有点jQuery通过google api控制货币转换器。转换器采用已定义的金额,并在您从下拉框中选择不同的货币时转换金额,但是它只会执行一次,您必须刷新以选择其他货币。
$(document).ready(function() {
$('.data').change(function(){
var cost = $('.itemExtraFieldsValue').html();
var amount = Number(cost.replace(/[^0-9\.]+/g,""));
var from = "GBP";
var to = $('#toCurrency').val();
var dataString = "amount=" + amount + "&from=" + from + "&to=" + to;
$.ajax({
type: "POST",
url: "ajax_converter.php",
data: dataString,
success: function(data){
$('.itemExtraFieldsValue').replaceWith(data);
}
});
});
});
我如何制作它以便您可以继续使用各种货币?谢谢!
编辑。抱歉应该把html打起来
<div id="currencyBox">
<div class="tractor">
<span class="itemExtraFieldsValue">£27000</span>
</div>
<div class="data">
<select name="toCurrency" id="toCurrency">
<option value="USD">United States Dollars - USD</option>
<option value="GBP" selected>United Kingdom Pounds - GBP</option>
<option value="CAD">Canada Dollars - CAD</option>
<option value="AUD">Australia Dollars - AUD</option>
</select>
</div>
</div>
编辑2。
以下是我的测试页面的链接,给定的价格是预定义的
答案 0 :(得分:1)
查看您的链接时,找不到类itemExtraFieldsValue
的元素,因为在第一次调用时它会被替换,因为您使用了replaceWith
。
试试这个:
function(data){
$('.itemExtraFieldsValue').html(data);
}
答案 1 :(得分:0)
.data
是您选择框的错误选择器,div
没有更改事件,因此无法使用。
你应该改变
$('.data').change(function(){
到
$('.data select').change(function(){
或
$('#toCurrency').change(function(){
在这种情况下你可以使用
var to = $(this).val();
作为你的价值。
答案 2 :(得分:0)
$('select').on("change", function(){
// your stuff here
});