/ / Извличане на src атрибут от скрипт таг и анализиране според определени съвпадения - javascript, jquery, синтактичен анализ

Извлечете атрибута src от маркера на скрипта и анализирайте според конкретни съвпадения - javascript, jquery, parsing

И така, трябва да определя типа на страницата в aсобствена CRM, използвайки JavaScript. Единственият начин да се определи типа на страницата (т.е. единствената постоянна разлика в предния край) е чрез изследване на скриптов маркер (от много списъци), чийто атрибут src започва с / модули /.

В списък с около дузина тагове за скриптове в заглавката всяка страница има ред от следния формат

 <script src="/modules/example/includes/sample.js" type="text/javascript"></script>

Сега редът на маркера на скрипта никога не е един и същ, но винаги има един скрипт, който има / модули / бла. Трябва да извлека бла в моя скрипт, за да открие какъв вид страница е.

И така, как да използвам JavaScript или jQuery,извлечете скрипт маркера "s src стойност, където src започва с / модули и съхранявайте стойността след това (" пример ", в примера по-горе) като променлива на javascript?

Отговори:

14 за отговор № 1

Е, можете да започнете, като съберете всички елементи на скрипта. С jQuery това е толкова просто, колкото

var scripts = $("script");

След това ограничете този набор до елементите, които имат a src атрибут:

var scripts = $("script[src]");

... и допълнително го ограничете до тези с src атрибут, започващ с "/ модули /":

var scripts = $("script[src^="/modules/"]");

... които дават вашето описание, трябва да доведат до набор от точно един елемент, от който вече можете да издърпате src самата стойност на атрибута:

var path = $("script[src^="/modules/"]").attr("src");

Добре, това беше лесно - сега да извлечете следващата частна пътя. Има много начини да направите това, но разделянето е бързо и тъпо: създайте масив от части, като използвате "/" като разделител, след което изберете третия елемент (който ще бъде този след "модули"):

var pathPart = $("script[src^="/modules/"]").attr("src").split("/")[2];

Очевидно всичко това е много специфично за точния формат на пътя на скрипта, който използвате като пример, но трябва да ви даде добра представа как да започнете ...