2011-10-27 10 views
0

私はカラーボックスのインライン機能を使用していると私は私がクリックしたときに、ウィンドウを閉じるように設定したボタンを作成しました:カラーボックスのonClick実行JS機能

$('.closebutton').live('click', function(){ 
     $.fn.colorbox.close(); 
    }); 

私は私がしたときに実行したい他の機能を持っていますボタンをクリックしたので、私は使用しました:

<button class="closebutton" onclick="myFunction();">Close</button> 

問題はmyFunctionは上で動作していません。

どのようなアイデアをお願いしますか?

UPDATE:

myFunction();を追加
<script type="text/javascript"> 
jQuery(document).ready(function() { 
    $(".inline").colorbox({inline:true, width:"50%"}); //for colorbox inline 
    $('#cboxClose').remove(); //remove popup window close button 

    $('.closebutton').live('click', function(){ 
     $.fn.colorbox.close(); 
     myFunction(); 
    }); 

MyFunctionのコードを動作していない前または$.fn.colorbox.close();後:(これはページ上の上記のコードの後に​​行くのコードがあるのはここ

があります)

<script type="text/javascript"> 
function myFunction() { 
    $("#ajax-form").submit(function(){ 
     $.post("update.php", 
     $("#ajax-form").serialize(), 
      function(data){ 
       $('#jqm').attr('src', 
       $('#jqm').attr('src')); 
      } 
     ); 
     return false; 
    }); 
} 
</script> 

更新日2:

私はよりよく説明しようとします:フォームと入力がメインページにありますので、入力ボックスにテキストを追加してフォームを送信すると入力の値が送信されます。 今、同じ入力をcolorBoxのインライン領域に配置して、ポップアップウィンドウ内に表示されるようにすると、値はサブミットされません。私はFirebagでJSエラーを取得しようとしましたが、そこに何も表示されません。 これが役立つことを願っています。

+0

myFunction()はどこに定義されていますか?あなたもそのコードを追加してください。 – Joey

+0

上記の更新を参照してください – Satch3000

答えて

1

の前にmyFunction()を追加しないのはなぜですか? 。その方法は、あなたが扱われているもの順ものを確認することができます

+0

not working ...更新を参照してください – Satch3000

+0

私は理由のために前に言った。 –

+0

私もBeforeを試しましたが、まだ動作していません。 – Satch3000

1

代わりのインラインJavaScriptを使用して、あなたは、単にこのような何かを行うことができます:

$('.closebutton').live('click', function(){ 
    $.fn.colorbox.close(); 
    myFunction(); 
}); 
+0

が動作していません...アップデートを参照してください – Satch3000

+0

少し具体的にできますか?あなたは 'myFunction'に入りますか?コードが正しく実行されないか、呼び出されない関数ですか? – Leo

+0

そこにあるコードは正しく実行されません。インラインポップアップの内側から関数が呼び出されると、myFunctionコードは実行されません。 – Satch3000

0

私は問題があると信じているmyFunction()(onClick属性) jQueryによってオーバーライドされています。あなたはあなたの関数を実行したい場合は.closebuttonがちょうど使用クリックされるたびに:読んだ後、その[OK]を

$('.closebutton').live('click', function(){ 
    $.fn.colorbox.close(); 
    if($(this).attr('id') == 'exampleID')){ 
     myFunction(); 
    } 
}); 
+0

が動作していません...アップデートを参照してください – Satch3000

0

$('.closebutton').live('click', function(){ 
     $.fn.colorbox.close(); 
     myFunction(); 
}); 

その唯一のそのボタンの場合は、そのボタンにIDを追加しようとすると、あなたの更新#2、私は実際にあなたの問題は、myFunctionコードが正しく実行されないことではないことを理解しています。

問題は、その値がフォームで提出していないので、入力は今外の形であるので、ウィッヒは正常で、カラーボックスの内側にあなたの入力を移動していることです。

フォーム全体をcolorboxの中に移動するか、javascriptを使用してフォーム外に移動した入力の値を非表示の入力にコピーすることができます。