0

ユーザーがYouTubeの埋め込みコードを入力できるテキストエリアフィールドがあり、送信時にテキストエリアの値を取得して本文に追加します。本文に追加する前に、埋め込みコードの src の末尾に ?id=123 を追加したいと考えています。これを行う最も簡単な方法は何ですか。追加される値は、変更された src を持つ iframe コードである必要があります

埋め込みコードは次のようになります

<iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/aemXgP-2xyg" frameborder="0" allowfullscreen></iframe>

更新されたコード

                var value = $('textarea').val();
                var wmode = '?id=123';
                var value1 = $(value).attr("src", $(value).attr("src") + wmode);                 
                var code = $('<div class="abs embed" id="embedId">' + value1 + '<span class="move"></span></div>');                 
                $(code).appendTo(...
4

4 に答える 4

2
var code = $("#TEXTAREA").val();
var appCode = $(code);
appCode.attr("src", appCode.attr("src") + "?id=123").appendTo($("#parentDiv"));
于 2011-02-06T03:47:38.710 に答える
1
var iframe = $($("textarea").val());
iframe.attr("src", function(i,v) { return v + '?id=123'; }).appendTo("body");

(Šime Vidasのソリューションで更新)

編集: Firebug がある場合は、このページで iframe コードをコピーしてテキストエリアに貼り付け、コンソールでこのコードを実行できます。

var lol = $("textarea").val()
var iframe = $(lol);
var test = iframe.attr("src", function(i,v) { return v + '?id=123'; })
test.appendTo("body");

また、YouTube ビデオはページの最後に挿入する必要があります。

編集2:アップデートでやりたいことをするには、それを試してください:

var value = $('textarea').val(),
wmode = '?wmode=transparent',
value1 = $(value).attr("src", $(value).attr("src") + wmode),
span = $('<span class="move"></span>'),
div = $('<div class="abs embed" id="embedId"></div>');
div.append(value1).append(span).appendTo("body");
于 2011-02-06T03:47:37.557 に答える
0

投稿されたすべてのソリューションは適切で機能しますが、src が存在する場合はそれを切り取り、それが本当に有効なビデオ ソースであるかどうかを確認したいと思います。彼らに html を入力させると、かなりの危険を冒すことになります。

Facebook を見てください。リンクを入力すると、彼はそれが何であるかを認識します。ユーザーにとっては、埋め込みコード全体を検索するのではなく、YouTube のリンクを渡すだけでよいのです。安全第一!

于 2011-02-06T03:52:42.503 に答える
0
$(ta.value).attr('src', function(i,v) { return v + s; }).appendTo('body'); 

...sは src 属性に追加する文字列
... とtsTEXTAREA 要素

于 2011-02-06T03:58:32.703 に答える