2016-05-03 20 views
-1

由於我的選擇器選項和徽標圖像具有相同的名稱,因此我希望使用它來創建一個在選擇時更改圖像的函數。我已經試過這樣:在jQuery中使用函數作爲div的屬性

$(function(){ 
    $(selector).click(
    $(function(){ 
     $(div).attr("src", "($(selector).val()).png") 
}))}) 

Buuut,無醬:(

與parth718幫助下得到了這一點:

$(function)(){ 
$(selector).click($(div).attr("src", "images/logos/"+($(selector).val()+".png")))}; 

但現在我得到的錯誤:類型錯誤:克handler.apply是不是一個函數。 我對這個運行的jQuery 1.12.2來自谷歌的CDN。 Toughts?.-。

+1

試試這個 - '$(logodiv).attr( 「src」 用戶,$(pagamento).VAL()+ 「PNG」)。 ' – Bhumika107

+1

您不需要在您的點擊處理程序中定義第二個文檔就緒處理程序*。 (功能)(){$(sel).click($(div).attr(「src」,「images/logos /」+)( – nnnnnn

回答

0

,而不是

$(logodiv).attr("src", "($(selector).val()).png"); 

試試這個

$(logodiv).attr("src",($(selector).val()+".png"); 

您正在使用的變量裏面的「」因此ATTR會改爲

src="$(selector).val().png" 

確切字符串將在那裏,而不是選擇變量。

+0

屬性設置工作,但我仍然不能運行該功能點擊, $ ($(SEL).VAL()+ 「PNG」)))}; 當我嘗試選擇控制檯時返回「TypeError:g.handler.apply不是函數」。有任何想法嗎? –

+0

我不認爲你需要做出這樣的新功能....使用正常的方式,即功能myFuntion(){你的代碼} ....如果我的答案工作,請標記,以便我可以獲得聲譽 – parth718

1

在PHP中,「$ file.png」給你你想要的結果,而不是在JavaScript ...

你必須用加號運算符與您的經銷商來連接字符串。

至於說,你必須做:

$(logodiv).attr("src", $(selector).val()+".png")