5

私はGrailsでソーシャルネットワークを構築していますが、編集プロファイルページ内のユーザーにyoutube-Urlをテキストフィールドに貼り付ける機会を与えることに行き詰まり、ボタンをクリックすることでJSが貼り付けられたURLからIDを正規表現し、ajax投稿がYouTubeビデオのプレビュー画像でdivを更新して発生しました

html は次のようになります。

                    <g:textField name="videoinput" class="videoinput reLef" value="" />
                    <span class="daten_videouploadbtn reLef" ></span>

        <g:render template="/forms/storedVideos" />

JS は次のようになります。

    $('.daten_videouploadbtn').click(function() {

        var string = document.editProfileForm.videoinput.value;
        var neu = string.replace(/http[s]?:\/\/(?:[^\.]+\.)*(?:youtube\.com\/(?:v\/|watch\?(?:.*?\&)?v=|embed\/)|youtu.be\/)([\w\-\_]+)/i, '$1'); 
        var id = RegExp.$1;

        jQuery.ajax({
        type:'POST',
        data:RegExp.$1, 
        url:'${createLink(action: 'addVideo')}',
        success:function(data,textStatus){jQuery('#storedvideos').html(data);},
        error:function(XMLHttpRequest,textStatus,errorThrown){}
        });
});

コントローラーは次のようになります。

def addVideo() {
    def videoitems = !!%%-- HOW TO PARSE YOUTUBE-ID HERE -%%!!
    render(template:"/forms/storedVideos", model: [newVideo:videoitems])
}

保存されたビデオは次のようになります。

    <div id="storedvideos"><span><img src="http://img.youtube.com/vi/${newVideo}/default.jpg" width="225px" height="130px"/></span></div>

Ajax Post のデータを取得し、ID を含むプレビュー画像で div を更新する方法がわかりません。

誰かがヒントを与えることができますか?それは私を殺している

4

2 に答える 2

4

次のようにデータを投稿する必要があります。

jQuery.ajax({
  type: 'POST',
  data: { value: RegExp.$1 },
  ...

その後、grails コントローラー内の投稿されたデータにアクセスできますparams.value

于 2012-12-16T21:05:10.427 に答える