ОсновноеRadiotalkПользовательское
Программирование
6   •   Посмотреть все темы

FAQ: основы js.

 

1007
BETEPAH @BETEPAH
ZloVeЩиЙ пишет:

Жень, спасибо что отозвался.
Дело в том что разметку никак не поменять, есть ли подобное решение без
<span id="target">Адын</span> ?

Можно менять только скрипт? Думаю, что можно обойтись и без изменения разметки, но надо видеть более картину, чтоб видеть, к чему можно привязаться.
Или например, привязаться к классу class='text' через ********** и затем
document.getElementById('del-type-2').onclick = function () {
if (this.checked) getElementsByClass('text',document)[0].parentNode.innerHTML = 'Дыдва <input type="text" name="text" class="text"></div>';
}
[0] - это естественно, если поле с таким классом единственное на странице, иначе надо считать.

6703
Андрей @ZloVeЩиЙ
Pegass, если бы все так просто... я же написал выше, что разметку менять не можно.
ВЕТЕРАН, думаю такой вариант приемлем т.к. клас input`a единственный на странице, буду дома - буду разбираться.
upd: разобрался, если кому будет нужно см. решение от ВЕТЕРАН`a.

Отредактировано ZloVeЩиЙ - 20.03.2012
4619
Web3r @Web3r
Кодеры, подскажите, как сделать так, чтобы данный ниже скрипт проверял значение value на частичное совпадение текста? Например, если из всего вписанного юзером значения было бы найдено слово "ТЕСТ", то выдавало бы алерт.

<form method="post" onsubmit="return sendform()">
TEXT: <input name="field" type="text"> <input type="submit" value="ОK">
</form>

<script>
function sendform() {
if (document.forms[0].field.value == "ТЕСТ1"||document.forms[0].field.value == "ТЕСТ2")
document.write("Алерт!");
return false;
}
</script>

1007
BETEPAH @BETEPAH
Web3r пишет:

Кодеры, подскажите, как сделать так, чтобы данный ниже скрипт проверял значение value на частичное совпадение текста? Например, если из всего вписанного юзером значения было бы найдено слово "ТЕСТ", то выдавало бы алерт.

<form method="post" onsubmit="return sendform()">
TEXT: <input name="field" type="text"> <input type="submit" value="ОK">
</form>

<script>
function sendform() {
if (document.forms[0].field.value == "ТЕСТ1"||document.forms[0].field.value == "ТЕСТ2")
document.write("Алерт!");
return false;
}
</script>

function sendform() {
if (document.forms[0].field.value.indexOf("ТЕСТ") != -1) document.write("Найдено слово ТЕСТ!");
}

Отредактировано BETEPAH - 23.09.2012
602
Ventage @new1
Ребят я искал но не нашел. Есть ********** для html, ********** css. Где найти для js (JavaScripts).

2970
удалён @Foggy
гугли jslint.

1555
Алексей @TheDark
Вопрос по jQuery.
Имеется скрипт вида:
<script type="text/javascript">
$(document.body).ready(function()
{
$('#show_success').click(function() { $.jmessage('Hello!', 'Бла-бла-бла', 0, 'jm_message_success'); });
});
</script>

Сообщение спокойно вызывается по ссылке: <a href="#" id="show_success">Показать сообщение об успехе</a>
А вот если вместо # поставить что-то вроде ?a=1, то сообщение уже не вызывается.
Я в jQuery слаб, поэтому вопрос: как сделать так, чтобы и ссылка работала и сообщение показывалось?

Отредактировано TheDark - 07.08.2013
8497
Степан @Trilby
Вообще, надо бы уточнять, что это за jmessage... Я так и не нашел этого плагина.
Судя по всему, это какое-то окошечко диалоговое. Если так, то, возможно, поможет обычный вывод из функции (хотя, не факт)
<script type="text/javascript">
$(document.body).ready(function()
{
$('#show_success').click(function() { $.jmessage('Hello!', 'Бла-бла-бла', 0, 'jm_message_success'); });
return false;
});
</script>

Если это что-то ajax'овое, то параметры передаются явно через функцию, а не просто ?a=1.

В общем, дай ссылку на дополнение.

1555
Алексей @TheDark
Плагин уведомлений jquery.jmessages
Вот он целиком:
Показать текст

?a=1 на уведомление никак не влияет. В идеале оно должно показываться в случае присутствия переменной а. Нечто вроде:
if (isset($_GET['a'])) {
...
//показать уведомление
}

Отредактировано TheDark - 07.08.2013
8497
Степан @Trilby
html:
<a href='/?a=1' id='show_success'>Make porn no love</a>
js:
$(document.body).ready(function()
{
//срабатывает по нажатию на ссылку. Ссылку при этом можно задавать любую
$('#show_success').click(function() { $.jmessage('Hello!', 'Бла-бла-бла', 0, 'jm_message_success');
return false;});

//при get запросе a = 1 опять таки выводит сообщение
var request = location.search;
var params = {};
request.replace(/(\w+)=(.+?)(&|$)/g, function (substr, key, value) {
params[key] = value;
});
if (params.a == 1){
$.jmessage('Hello!', 'Бла-бла-бла', 0, 'jm_message_success');
}
});

не тестировал с get-запросом, но должно работать.

В идеале, если ты хочешь, чтобы при клике изменялась ссылка, и ее можно было передать пользователю, то пользуйся **********. Использовать get запросы для джаваскрипта — плохо.

Отредактировано Trilby - 07.08.2013
1555
Алексей @TheDark
Trilby, It work! Thanks!

UPD.
Уведомление то показывается. А по ссылке не переходит! Т.е. в адресную строку не передается параметр ?a=n&b=m (на всякий случай укажу, что a и b могут принимать разные значения)... Нужно, чтобы как-то вместе все происходило)

Отредактировано TheDark - 07.08.2013
8497
Степан @Trilby
Дык просто убери тогда return false; и оно будет по ссылке переходить.
Ща у себя проверил, все работает

Отредактировано Trilby - 07.08.2013
1555
Алексей @TheDark
Trilby, по ссылке переходит, но сообщение не показывает (:

UPD.
Решил, в общем. Поместил в js в PHP код и убрал $('#show_success').click(function(). Спасибо!

Отредактировано TheDark - 07.08.2013
1555
Алексей @TheDark
Каким образом можно сделать так, чтобы нажав по ссылке какой-то заранее предусмотренный текст поместился в текстовое поле?
Например, на мп так реализованы смайлы: нажав на смайлик в поле ввода сообщения помещается код смайла. Как это делается?

8497
Степан @Trilby
TheDark пишет:

Каким образом можно сделать так, чтобы нажав по ссылке какой-то заранее предусмотренный текст поместился в текстовое поле?
Например, на мп так реализованы смайлы: нажав на смайлик в поле ввода сообщения помещается код смайла. Как это делается?

вариант на Jquery **********

Отредактировано Trilby - 23.01.2014
1555
Алексей @TheDark
Trilby, ты скинул две одинаковые ссылки)
с jquery работает, но это не совсем то, что нужно... ссылок может быть много и если нажимать на несколько ссылок, то значения должны добавляться друг за другом) а в твоем варианте, если сделать несколько ссылок, то одно значение - заменит другое.

UPD. уже решил.

Отредактировано TheDark - 23.01.2014
8497
Степан @Trilby
TheDark пишет:

Trilby, ты скинул две одинаковые ссылки)

мля. Не сохранил, видать.

с jquery работает, но это не совсем то, что нужно... ссылок может быть много и значения у них могут быть самые разные... и если нажимать на несколько ссылок, то значения должны добавляться друг за другом) а в твоем варианте, если сделать несколько ссылок, то одно значение - заменит другое.
Если я нигде не накосячил, то это должно выглядеть так **********
В JSFiddle как обычно какая-то муйня с определением функции, так что для теста нужно куда-нибудь сохранить в .html файл

1555
Алексей @TheDark
Trilby, не, не пашит...
в любом случае спасибо, но я уже нашел решение намного компактнее, всего пара строк)
у Димы стырил 🙄

Отредактировано TheDark - 24.01.2014