Javascript 使用带有下拉选择的自定义属性jQuery选择器(取2)
这个问题让我想砸烂我的电脑。我有一个表单,我想根据表单上的选择计算值。我这里有两个jsfiddle,我真的很想有它,这样我可以做出选择,然后点击计算。但我甚至不能让表单在click上运行。因此,另一个fiddle用于change和keyup函数。这张表格上也有一个问题。如果将第一个选择更改为选项2,您将看到该选择的值最终为1.37999996,而不是1.38。为什么会这样 JS: JS: 您的选择器$this.findoption:selected错误,因为此处指向submit按钮,因此您需要使用其id样式查找select元素Javascript 使用带有下拉选择的自定义属性jQuery选择器(取2),javascript,jquery,forms,jquery-selectors,Javascript,Jquery,Forms,Jquery Selectors,这个问题让我想砸烂我的电脑。我有一个表单,我想根据表单上的选择计算值。我这里有两个jsfiddle,我真的很想有它,这样我可以做出选择,然后点击计算。但我甚至不能让表单在click上运行。因此,另一个fiddle用于change和keyup函数。这张表格上也有一个问题。如果将第一个选择更改为选项2,您将看到该选择的值最终为1.37999996,而不是1.38。为什么会这样 JS: JS: 您的选择器$this.findoption:selected错误,因为此处指向submit按钮,因此您需
演示:非常好,谢谢。现在,我们来看看为什么这些值不能从数据价格中正确返回attribute@Potatrick你怎么说它没有返回正确的值?在第一次选择时使用选项2,看看它返回了什么。与正确值相差一分钟。这是浮点计算的问题:。。。您可以查看以确定十进制数places@Potatrick也看到
$('#submit').click(function(){
var price=$(this).find("option:selected").attr('data-price');
var ink=$('#ink').val();
var loc1=$('#loc1').val();
var res= price*1 + ink*1 + loc1*1 ;
$('#bleh').val( res || 0 );
});
$('#ink, #loc1, .sel').on('keyup change',function(){
var price=$('option:selected', this).attr('data-price');
var ink=$('#ink').val();
var loc1=$('#loc1').val();
var res= price*1 + ink*1 + loc1*1 ;
$('#bleh').val( res || 0 );
});
$('#submit').click(function(){
var price=$('#style').find("option:selected").attr('data-price');
var ink=$('#ink').val();
var loc1=$('#loc1').val();
var res= price*1 + ink*1 + loc1*1 ;
$('#bleh').val( res || 0 );
});