2011-07-29 49 views
0

是否可以使用live()類發送表單?JQuery - 表單的實時發送?

點擊時,我想提交表單和顯示的fancybox以下的結果是我的代碼,這犯規提交什麼,我是動態產生的周圍頁面上的各個項目的形式 -

   $(document).ready(function() { 
     $.ajax({ 
        type: "GET", 
        url: "code.xml", 
        dataType: "xml", 
        success: parseXml, 
        error: errorMsg, 
        complete: alldone 
      }); 
      function alldone() { 
       setTimeout(function() { 
// do stuff 


       $(function() { 

        $("#albums_carousel").carouFredSel({ 
        curcular: false, 
        infinite: false, 
        auto : false, 
        prev : {  
         button : "#prevAlb", 
         key  : "left" 
        }, 
        next : { 
         button : "#nextAlb", 
         key  : "right" 
        }, 
        pagination : "#pagerAlbums" 
     }); 
        $("#games_carousel").carouFredSel({ 
        curcular: false, 
        infinite: false, 
        auto : false, 
        prev : {  
         button : "#prevG", 
         key  : "left" 
        }, 
        next : { 
         button : "#nextG", 
         key  : "right" 
        }, 
        pagination : "#pagerGames" 
     }); 
        $("#tracks_carousel").carouFredSel({ 
        curcular: false, 
        infinite: false, 
        auto : false, 
        prev : {  
         button : "#prev3", 
         key  : "left" 
        }, 
        next : { 
         button : "#next3", 
         key  : "right" 
        }, 
        pagination : "#pagerTracks" 
     }); 





     });}, 100); 

      } 
      function parseXml(xml) 
      { 
        $('.albRow').empty(); 
        $(xml).find("album").each(function() 
        { 
          var title = $(this).find('productDescription').text(); 
          var artist = $(this).find('artist').text(); 
          var artwork = $(this).find('artwork').text(); 
          var price = $(this).find('price').text(); 
          var mediaItem = $(this).find('mediaItem').text(); 
          var artwork = $(this).find('artwork').text(); 
          var chargeCode = $(this).find('chargecode').text(); 
          var productCode = $(this).find('productCode').text(); 
          var listItem = $('<li><form action="https://formhandler.net" method="post" id="pfi_form'+mediaItem+'" name="pfi_form" target="thisframe"><input type="hidden" name="transactionRequest" id="pfi_transactionRequest" value="' + chargeCode + '"><input type="hidden" name="productCode" id="pfi_productCode" value="' +productCode+'"><input type="hidden" name="productDescription" id="pfi_productDescription" value="'+title+'"><scr'+"i"+'pt type="text/javascript" src="formFooter.js"> </scr'+"i"+'pt><a id="inline" name="pfi_form'+mediaItem+'" class="overlayLink" href="#data"><img src="'+artwork+'" width="82" height="85" alt="Buy Adele 21" /></a><span class="artist">Adele</span><span class="title">21</a></span><span class="price"><a id="inline" href="#data">£1.60</a> </span></li></form>');        
          $(".albRow").append(listItem); 
        }); 
      } 
      function errorMsg() { 
        alert("error getting xml feed"); 
      } 
     }); 



      $('.overlayLink').live('click', function() { 

$("a#inline").fancybox({'hideOnContentClick': true}); 

$.fancybox({ 

    type: "iframe" 
}) 

$("#pfi_form3022158").submit(); 

}) 


    </script> 

任何想法,將非常感激地收到!

乾杯 保羅

+2

這一定是你的代碼的一個很小的片段。我根本沒有看到表格。你確定表單* ID *設置正確嗎?你將變量命名爲formName,但是當你在jQuery中使用id選擇器時,名字不會對你有所幫助。 – GolezTrol

+0

以上完整代碼 – Dancer

回答

0

什麼,我已經從你的代碼所示,你可以這樣做:

$('.overlayLink').live('click', function() { 

    $("a#inline").fancybox({'hideOnContentClick': true}); 

    $.fancybox({ 

     type: "iframe" 
    }) 

    $(this).closest('form').submit(); 

    })