У меня проблемы с моим jquery, я не могу на самом деле шов, чтобы заставить его работать.
Я делаю опрос, и последний вариант радио в каждом вопросе - это другое, поэтому пользователь может ввести пользовательский текст, если ему нравится. Я хотел бы, чтобы текстовое поле было скрыто до тех пор, пока не будет проверено радио, и текстовое поле должно быть равноправным.
Я пробовал с этим:
$(document).ready(function () {
$("#custom_form_custom_field_2_block").hide();
$("input:radio[name=custom_form[custom_field_1]]").change(function () {
if (this.value == "jeg har et helt 4. forslag") {
$("#custom_form_custom_field_2_block").fadeIn();
} else {
$("#custom_form_custom_field_2_block").fadeOut();
}
});
$("#custom_form_custom_field_2_block").focusout(function () {
$("input:radio[name=Title]:checked").attr('value', $("#custom_form_custom_field_2_block").val());
});
});
У меня есть ссылка на mt скрипку здесь: JSFiddle
Надеюсь, вы можете помочь, С уважением Томас
Я считаю, что эта линия является проблемой:
$("input:radio[name=custom_form[custom_field_1]]")
Скобки ("[" и "]") являются зарезервированными символами в селекторах css (вы передаете такой селектор функции jQuery $()), и вы используете скобки как часть имен ваших элементов. Попробуйте это вместо этого:
$("input:radio[name=custom_form\\[custom_field_1\\]]")
Что дает селектор css
input:radio[name=custom_form\[custom_field_1\]]
таким образом избегая скобок. Может не работать во всех браузерах.
Изменение: здесь дополнительная информация об экранировании символов в css-селекторах: http://mathiasbynens.be/notes/css-escapes
Uncaught Error: Syntax error, unrecognized expression: input:radio[name=custom_form[custom_field_1]]