2013-08-18 7 views
0

У меня есть документ с элементом, как это:значения из всплывающего окна в родительском элементе

<input type="text" id="newsPicture" name="newsPicture" /> 

С JQuery я создал ссылку, чтобы показать всплывающее окно.

В этом всплывающем у меня есть список новости картин, как

<a id="newsPictureName" class="newsPicture">newsPictureName.jpg</a> 

Теперь я буду выбрать одну из этих фотографий с а-элементом, чтобы закрыть окно

$(function(){ 
    $('.newsPicture').click(function() { 
     window.close(); 
    }); 
}); 

Как я введите имя этой новости в поле ввода в моем родительском документе?

Любые идеи?

Извините за мой плохой английский ...

ответ

0

Вы можете получить доступ текст элемента через text().

Вы можете изменить значение поля за счет использования val()

Это сделает ваш код что-то вроде этого

$(function(){ 
    $('.newsPicture').click(function() { 
     window.close(); 

     //get the text of the element we clicked 
     var pictureName = $(this).text(); 

     //put this value in our field 
     $('#newsPicture').val(pictureName); 
    }); 
}); 

или более короткое решение будет

$(function(){ 
    $('.newsPicture').click(function() { 
     window.close(); 

     $('#newsPicture').val($(this).text()); 
    }); 
}); 
+0

Спасибо! Но когда я использую это, у меня есть много элементов a с одним и тем же именем namend «newsPicture», и я стал ошибкой W3C. Когда я меняю id (#) на класс (.), Это не сработает. – user2693715

+0

Для начала вам не разрешено иметь несколько элементов с одним и тем же идентификатором. Также ... вы уже используете текстовую форму для своих изображений. Просто выберите другой класс, например '.picturevalue' –