2016-03-15 46 views
1

任何人都可以請幫我一個問題,我已與JavaScript和選擇?首先,我試圖做的是當我從列表中選擇一個圖像圖像我想獲取圖像src並將其存儲到我可以使用的其他var現在是我選擇圖像時遇到的問題我得到以下src portraits/00000/00008.jpg現在我需要刪除肖像和兩個/和來自src的.jpg,所以我只需獲取文件夾ID和圖像ID,並將它們實時添加到fieldtext框中,而無需刷新頁面。有問題獲取選定img src並在文本字段中顯示

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.portrait').click(function(){ 
     var idimg = $(this).attr('id'); 
     var srcimg = $(this).attr('src'); 

     alert(srcimg); // shows debug 

     }); 
    }); 
    </script> 

<input name="sel-avatar" type="textfield" id="avatar" value="IMAGEID" /> 
<input name="sel-avatardir" type="textfield" id="avatardir" value="FOLDERID" 

圖像顯示是

<img id=\"portrait\" class=\"portrait\" src=\"{$files[$pos]}\" width=\"88\" height=\"88\" border=\"1\" /> 

誰能幫助?

回答

0

可能是你要找的這個?

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.portrait').click(function(){ 
     var idimg = $(this).attr('id'); 
     var srcimg = $(this).attr('src'); 

     var splitSrc = srcimg.split("/"); 

     var folder = splitSrc[1]; 
     var splitFile = splitSrc[2].split("."); 
     var fileId = splitFile[0]; 
     document.getElementById("avatar").value=fileId; 
     document.getElementById("avatardir").value=folder; 

     }); 
    }); 
</script> 
0

如果你確信你會得到相同的格式,即文件夾ID,然後圖像ID,圖片的名稱,你可以使用分割函數來獲取JavaScript陣列,從陣列獲取的細節..

<script type="text/javascript"> 
"portraits/00000/00008.jpg".split(/[\/]+/) 
</script> 

數組[ 「肖像」, 「00000」, 「00008.jpg」]

+0

有許多文件夾ID和圖像超過500,我試過你patricia它接縫的代碼工作,但不完全它只會顯示文件夾ID不是圖像ID和調試SRC它說portraits,folderid,imageid.jpg但不顯示圖片 –

0

嘗試這種情況:

var ary = srcimg.split(/\/|\./g); 

var folder = ary[1]; 

var file = ary[2]; 

這裏的假設是,您將擁有一個文件夾,並且除文件擴展名之外,文件夾或文件名中沒有任何句點。 如果有多個文件夾,我們必須稍微更改分配,但拆分語句是相同的。

+0

好的,謝謝你解決了你很多都是最好的:) –

相關問題