ID が未定義です。 http://jsfiddle.net/valamas/YUPWu/
誰かが私の(些細な?)エラーを拾ってくれることを願っています。
ありがとう
$(this) が何も参照していないからですか?$(this) は通常、選択したアイテムを意味します..あなたの場合、その関数内では要素を指していないため、何もありません。あなたはこのようにすることができます
$(function (){
   $(document).on('click', "#MyId", function () { 
       var theId = $(this).prop('id'); //$(this).id does not work either.
       alert(theId);
   });
});
    thisにアクセスできないためです。デモ
$(function ()
{
    $(document).on('click', "#MyId", function () { MyId_Click(this); });
});
function MyId_Click(obj)
{
    var theId = $(obj).attr('id'); 
    alert(theId);
}