Проблема в том, что класс div, который вы после буквально не начинаете с "file-plugin-"
, он просто содержит его. Вам нужно изучить атрибут класса вручную, JQuery не помогает с этим (что я знаю).
Что-то вроде этого должно работать:
$(function() {
$(document).on('click','.addfile', function() {
// need to be dinamicaly
var target = $(this).parents("div").filter((_, div) => -1 != div.className.indexOf('file-plugin-'));
// console.log(target[0]);
// Or using the "contains" selector (credit to @epascarello)
target = $(this).parents("div[class*=file-plugin-]");
var string = target.attr("class").split(" ").filter( clazz => clazz.startsWith('file-plugin-'))[0];
console.log(string);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrap1">
<div class="other class file-plugin-1">
<div class="wrap2">
<div class="input-group-append">
<button type="button" class="remfile">Remove</button>
<button type="button" class="addfile">Add</button>
</div>
</div>
</div>
</div>
Вы можете преобразовать свою справочную таблицу в словарь, а затем использовать метод Pandas replace () , чтобы преобразовать все ключи в вашем главном информационном фрейме в более длинные описания, которые находятся в вашем справочнике. до стола.
Вот пример:
Скажем, у вас есть фрейм данных с именем df
, который имеет столбец Weather
, подобный этому:
Weather
0 1
1 2
2 3
3 3
4 2
5 1
6 1
7 1
8 2
9 3
И затем произнесите Верхняя таблица называется keys_df
и выглядит следующим образом:
Key Meaning
0 1 Sunny
1 2 Cloudy
2 3 Rainy
Сначала выполните следующие два шага, чтобы преобразовать вашу справочную таблицу keys_df
в словарь:
Key
в качестве индекса, используя метод set_index () Панд:
keys_df = keys_df.set_index('Key')
Затем используйте Панд ' Метод to_dict () для создания словаря из справочной таблицы keys_df
:
key_dict = keys_df.to_dict()
На этом этапе поиск словарь будет выглядеть следующим образом:
{'Meaning': {1: 'Sunny', 2: 'Cloudy', 3: 'Rainy'}}
Последний шаг - использование метода replace () для замены каждого числа в столбце Weather
в вашем основной фрейм данных df
с его текстовым описанием, которые содержатся в словаре под ключом Meaning
внутри словаря, возвращенного методом to_dict()
:
df.loc[:,'Weather'] = df['Weather'].replace(key_dict['Meaning'])
Это будет сделать тебя Столбец r Weather
выглядит так:
Weather
0 Sunny
1 Cloudy
2 Rainy
3 Rainy
4 Cloudy
5 Sunny
6 Sunny
7 Sunny
8 Cloudy
9 Rainy