2012-07-15 25 views
0

我正在寫一個從用戶輸入的url抓取圖像的頁面,並且使用ajax,我正在用img src更新div,以便在模式窗口中用fancybox顯示。顯示的圖像的標題顯示如下,作爲鏈接。這是用fancybox完成的(如果你將標題設置爲title="something"將在圖像下面顯示「something」,如果你將標題設置爲title="<a href='something.html'>Something</a>用Href改變隱藏的輸入Javascript調用

我的問題是這樣的。我需要允許用戶通過點擊鏈接選擇圖片,然後讓它做2件事:用img的src url更新隱藏字段,然後提交表單。

這裏是我對Ajax請求的代碼:

function getCustomerInfo() { 
     var phone = document.getElementById("urls").value; 
     var url = "grabimages.php?urls=" + escape(phone); 
     request.open("GET", url, true); 
     request.onreadystatechange = updatePage; 
     request.send(null); 
     $("#dvloader").show(); 
     $("#selectimages").hide(); 
     //$("#noimages").hide(); 

     function updatePage() { 
     if (request.readyState == 4) 
      if (request.status == 200){ 
       if(request.responseText == ''){ 
        $("#dvloader").hide(); 
        $("#noimages").show(); 
       }else{ 
        document.getElementById("update-div").innerHTML = request.responseText; 
        $("#dvloader").hide(); 
        $("#selectimages").show(); 
        $(".fancybox") 
         .attr('rel', 'gallery') 
         .fancybox({ 
          padding : 15 
         }); 
        $('input[id=theimage]').click(function(){ 

         $(".fancybox").eq(0).trigger('click'); 
        }); 


        function recURL(recipeurl) { 

         $('#recipeurl').val('recipeurl'); 
         document.recipeform.submit(); 


        } 

       } 
      }else{ 
       alert('nothing'); 
      } 

     } 

,這裏是我試過在href JavaScript調用(這是服務器端代碼的代碼,所以PHP:

echo "<a class=\"fancybox\" id=\"recipelinks\" title=\"<a href='#' onclick='javascript:recURL(" . $imagepath . ");'>Choose this Image</a>\" href=\"" . $imagepath . "\"><img src=\"" . $imagepath . "\" alt=\"\"/></a>"; 

這並不做任何事情。有什麼建議?

回答

0

使用$('.fancybody').live('click', function() { });live讓你聽其添加到上的元素事件動態地調用。

+0

所以,如果我使用'$( '的fancybox ')生活(' 點擊',函數(){});'我需要能夠使用動態URL的功能。如何才能做到這一點?所以,我需要這樣的:'$('。fancybox')。live('click',function(recURL){$('#recipeurl')。val('recipeurl'); document.recipeform.submit() ; });''''''我假設每次點擊fancybox的類時都會調用代碼,我只是不知道如何跟蹤哪個鏈接被特定點擊。 – 2012-07-15 13:37:17

+0

我明白了。我用了你的代碼,但做了一些修改,以適應自己的 '$( 'recTitle ')。住(' 點擊',函數(){\t \t \t \t \t \t \t \t \t \t \t \t \t \t變種RURL = $(本).attr( '相對'); \t \t \t \t \t \t \t的document.getElementById( 「recURL」)值= RURL; \t \t \t \t \t \t \t $ .fancybox.close(真); \t \t \t \t \t \t});' – 2012-07-16 03:20:31

+0

@StevenJohnson對不起,我錯過了你的第一個回覆..也注意到我拼寫錯誤的fancybox,哎呀。很高興你解決了! – Martin 2012-07-16 09:09:53