Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   берем значение из textarea (https://javascript.ru/forum/events/28134-berem-znachenie-iz-textarea.html)

Brook 08.05.2012 22:45

берем значение из textarea
 
Доброго времени суток есть вот такой код

function getTextAreaElementIdInnerHTML(textarea, id){
    var reg = new RegExp('<span .* id="'+id+'".*>(.*)<\/span>', 'i');
    return textarea.value.match(reg)[1];
}
document.getElementById("zanrdobmat").value = getTextAreaElementIdInnerHTML(document.getElementById("message"), "zanr")


ищет по textarea и по идеи должен выводить первое совпадение - тоесть его значение, ищет по этому коду

<div class="panel" title="Манга"><div class="wrapper"><table><tbody><tr><td rowspan="9" style="vertical-align:top;margin:0px;left:0;top:0;width:160px;"> <!-- 1 - 1 --><img src="http://www.world-art.ru/animation/img/8000/7997/1.jpg" style="border:2px inset #e7e7e7;margin:15px 10px;width:150px;height:auto;" id="poster"></td><td colspan="2"> <!-- 1 - 2 --><b>Информация:</b></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 2 - 2 --><b>Страна:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 2 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="stran">Япония</span></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 3 - 2 --><b>Жанр:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 3 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="zanr"> комедия, романтика, школа, сёдзё</span></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 4 - 2 --><b>Серий:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 4 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="vse">1</span></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 5 - 2 --><b>Режисер:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 5 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="rez">Наганума Норихиро</span></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 6 - 2 --><b>Снято по манге:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 6 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="snman">Hiyokoi</span></td></tr><tr><td colspan="2" style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 7 - 2 --><b>Перевод:</b></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 8 - 2 --><b>Субтитры:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 8 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="syb">нет </span></td></tr><tr><td style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 9 - 2 --><b>Озвучка:</b></td><td style="vertical-align: top;margin:0px;left:0;top:0;"> <!-- 9 - 3 --><span style="font-family:Arial Narrow;white-space:nowrap;" id="ozv">ктото</span></td></tr><tr><td colspan="3" style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 10 - 1 --><b>Описание:</b></td></tr><tr><td colspan="3" style="vertical-align: top;margin:0px;left:0;top:0;width:140px;"> <!-- 11 - 1 --><span style="font-family:Arial Narrow;" id="opi">Мне уже пятнадцать....</span></td></tr></tbody></table></div></div>


данный скрипт берет значение не span с требуемым id а с последнего span тоесть почему начинает свой поиск со span с заданным id( = zanr) и кончается на последнем закрывающемся span'е

Подскажите что сделать чтобы он показывал мне значение span id=zanr???

Полный, рабочий код страницы ТУТ

И точно такой е но без переносов и потому не работает - ТУТ

Заранее спасибо за помощь!

9xakep 09.05.2012 13:34

Brook,
скажи просто, что надо сделать?

Раед 09.05.2012 15:07

Цитата:

Сообщение от Brook
var reg = new RegExp('<span .* id="'+id+'".*>(.*)<\/span>', 'i');

Тут бы не жадный поиск не помешал..
var reg = new RegExp('<span .*? id="'+id+'".*?>(.*?)<\/span>', 'i');

Brook 10.05.2012 11:08

Раед,
ОГРОМНОЕ СПАСИБО, ВСЕ РАБОТАЕТ!:)

Brook 10.05.2012 11:09

9xakep,
я не прошу сделать скрипт за меня, мне это не надо мне нужна помощь, подсказка, а скрипт я и сам способен написать!!:stop:


Часовой пояс GMT +3, время: 08:40.