2012-03-08 10 views
1

私は自分自身にjQueryとPHPを教えています。私はいくつか問題があります。私は、私のPHPスクリプトに投稿される要素IDが、私のdropable divに落とされたら必要です。次のコードは、ドラッグ可能なdivに要素をドラッグアンドドロップするとポストされません。私は、次のことを試してみました:

  • 私はアイテムはそれがないその削除されたことを確認するために、アラートボックスから離れて、すべてを削除しているので、アイテムがドロップ可能と見られています!
  • 結果を確認するためにdivに手動でいくつかの内容を入力しました
  • var name = "test"に置き換えて、可変内容をテストしました。

javascriptファイルとphpスクリプトは同じディレクトリにあり、ファイル名は正しいです。 JavaScriptのドラッグアンドスクリプトが

<script type="text/javascript" src="js/drag-drop.js"></script> 

ドロップ可能エリアの後に含まれるドロップ私はこの問題は、変数が受信できたかどうかを確認するために、プレーンテキスト、何も戻ってPHPスクリプトの結果を交換しました。だから投稿はPHPスクリプトになっていないようです。誰かがいくつかの指針を提供できることを願っています!

以下は私のコードですが、HTMLは単なるdivです。 `;`エコー$名でなければなりません `;

$('#drop').droppable({ 
    hoverClass: 'drophover', 
    accept: '#carousel-ul li', 
    drop: function(event, ui) { 
     var name = $(ui.helper).attr('id'); 
     var content = $(ui.helper).html(); 
     $.post('javascript.php', { name: name, content: content }, function(data) { 
      $('#drop-content').html(data); 
     }); 
    } 
}); 
+1

'エコー名前:ドロップ可ウィジェットの

API documentation

$(document).ready(function() { $('#carousel-ul li').draggable({ helper: 'clone', revert: true }); $('#drop').droppable({ hoverClass: 'drophover', accept: '#carousel-ul li', drop: function(){ //alert("has been accepted and dropped"); var name = ui.helper.attr('id').val(); $.post('javascript.php', { name: name }, function(data){ $('#drop-content').html(data); }); } }); }); <?php //echo "id was posted"; if(isset($_POST['name'])){ $name = $_POST['name']; var_dump($name); echo name; //echo "id was posted inside"; } ?> 

+0

私は警告が実際にそれをコメント解除するときに動作していると思いますか?その場合、あなたのドロップイベント機能に何も問題はありません。投稿が実際に送信されたかどうか確認しましたか? (つまり、chromeのGoogle開発ツールを使用してください; ctrl + shift + i、 'Network'タブをチェックアウトしてください)。それは何と言いますか? – giorgio

+1

あなたは '.attr( 'id')'の後に '.val()'を呼び出しています。あなたはそうしてはいけません。 '.att( 'value')'の便利なメソッドですが、要素の代わりに文字列(id)を呼び出しています。 '.attr( 'id')'は要素のIDを取得するために必要なことすべて。編集:また、 'drop:function()'を 'drop:function(event、ui)'に変更する必要があります。今のところ、未定義の変数(ui)を呼び出しています。 –

答えて

0
あなたはこのような何かを試す必要がありますので uiパラメータはjQueryオブジェクトであることを述べています - それはちょうどタイプミスですか?
関連する問題