Jquery附加具有定义值和名称的表单输入

时间:2015-05-25 14:39:15

标签: javascript jquery twitter-bootstrap

我正在为Bootstrap设置一个Blueimp画廊,它显示来自Flickr照片的照片,并调整提供的jquery。如何将表单输入附加到每个缩略图?输入必须具有已定义的名称和等于javascript值 photo.Title 的值。尽管有很多谷歌搜索,目前我只能附加一个输入值,但没有名称,或名称,但没有值。

代码,倒数第二行不起作用: -

$.ajax({
        url: 'https://api.flickr.com/services/rest/',
        data: {
            format: 'json',
            method: 'flickr.photosets.getPhotos',
            photoset_id: 'etc',
            user_id: 'etc',
            api_key: 'etc'
        },
        dataType: 'jsonp',
        jsonp: 'jsoncallback'
    }).done(function (result) {
        var linksContainer = $('#links'),
            baseUrl;
        // Add the demo images as links with thumbnails to the page:
        $.each(result.photos.photo, function (index, photo) {
            baseUrl = 'https://farm' + photo.farm + '.static.flickr.com/' +
                photo.server + '/' + photo.id + '_' + photo.secret;
            $('<a/>')
                .append($('<img>').prop('src', baseUrl + '_s.jpg'))
                .append("<span><input type='text' name='Title' value='' id='Title' style='color:#000;'/></span>")
                .$('#Title').val(photo.title)
                .appendTo(linksContainer);
        });
    });

1 个答案:

答案 0 :(得分:0)

不要在追加元素之前调用.val(),只需使用value属性:

.append("<span><input type='text' name='Title' value='" + photo.title + "' id='Title' style='color:#000;'/></span>")

此外,ID必须是唯一的。 (Title如果运行多次,则会出现多次)