Javascript JQuery选择具有精确匹配类的所有下拉列表
这是我的密码Javascript JQuery选择具有精确匹配类的所有下拉列表,javascript,jquery,loops,select,drop-down-menu,Javascript,Jquery,Loops,Select,Drop Down Menu,这是我的密码 $('select[class^="' +pnum+ '"]').each(function(){ // Get price and prefix of each attributes var PricePrefix = AttributesAll[$(this).attr('class')] var PricePrefixSplit = PricePrefix.split("-with-");
$('select[class^="' +pnum+ '"]').each(function(){
// Get price and prefix of each attributes
var PricePrefix = AttributesAll[$(this).attr('class')]
var PricePrefixSplit = PricePrefix.split("-with-");
var AttPrice = parseFloat(PricePrefixSplit[0]);
var AttPrefix = PricePrefixSplit[1];
attributes_price = parseFloat(attributes_price);
// Formulas for calculating attribute prices
if (AttPrefix == '+') {
attributes_price = attributes_price+AttPrice;
} else if (AttPrefix == '%'){
attributes_price = attributes_price * (1+(0.01*AttPrice));
} else {
attributes_price = attributes_price-AttPrice;
}
});
我正在尝试获取所有具有完全匹配的类名的选择框
$('select[class^="' +pnum+ '"]').each(function(){
1) 上面的代码行获取以匹配类开头的所有选择框
2) pnum
是一个整数值,我尝试将其转换为字符串,但仍然存在相同的问题
3) 假设有class='1'和class='10'两个类,它会同时获取这两个类,但它不应该这样做
4) 我已尝试将上面的代码行替换为
$('select[class="' +pnum+ '"]').each(function(){
这样做仍然不起作用
任何帮助都将不胜感激为类指定整数听起来不是个好主意。除非你有一个特定整数的css。如果使用它来纯粹标识对象,则可以使用自定义选择器,如
<select data-selector="1">
<option value="as">1st option</option>
</select>
希望对您有所帮助。通常,将类指定为数字不是一个好主意,请尝试添加一些伪单词:
$('select[class^="el' +pnum+ '"]').each(function(){
无论如何,我认为问题在于你的pnum变量,如果它是1,它将选择所有以1开头的类,因为你在定义中这么说:
$('select[class^=
它处理所有以定义的单词(^char)开头的类
更进一步,您可以在循环之前定义存储类名称的变量:
var elem = "el" + pnum;
$('select[class="'+elem+'"').each(function(){
$('select[class=“”+pnum+“]”)应该可以工作。
你能在控制台中看到错误吗?@guradio我在控制台中看到此警告getPreventDefault()的使用已被弃用。请改为使用defaultPrevented。在jquery 1.6.2中
var elem = "el" + pnum;
$('select[class="'+elem+'"').each(function(){