2012-07-19 43 views
0

我想通過JavaScript創建一個選擇元素,並且我想爲其設置一個屬性,稱爲data-placeholder將非標準屬性添加到使用Javascript的選擇標記

我們怎樣才能用JavaScript分配的非標準屬性沒有瀏覽器抱怨:

Uncaught referenceError: Invalid left-hand side in assignment 

代碼導致錯誤:

select1.data-placeholder="Choose ..."; 
+2

顯示你的JavaScript,你做錯了什麼,但我們看不到。 – 2012-07-19 14:49:28

+0

彼得Pajchl有答案 - 就是它 – aurora 2012-07-19 15:26:10

+0

仍然會很高興看到導致錯誤的代碼。 – epascarello 2012-07-19 15:31:30

回答

2

既然它用javascript表示jquery ...

yourElement.setAttribute('data-placeholder','value'); 
+0

簡短,簡潔而美麗。你能給我一個這個文件的鏈接嗎? – aurora 2012-07-19 15:04:15

+0

http://html5doctor.com/html5-custom-data-attributes/上很好的解釋 – 2012-07-19 15:05:05

-1

jQuery讓這個簡單:

$("<select></select>").attr("data-placeholder", "value").appendTo($element); 
+0

jQuery標籤在哪裏? – epascarello 2012-07-19 14:52:25

+0

+1,你也可以編寫'$(「」).data(「placeholder」,「value」)// ...' – Florent 2012-07-19 14:54:41

+0

@epascarello - 不需要一個,它仍然是一個解決方案。 – 2012-07-19 14:54:42

1

這是一個非常簡單的非jQuery方法來實現這一點;

var el = document.createElement('select'); 
el.setAttribute('data-placeholder', 'placeholder value'); 
document.body.appendChild(el);​ 

我創建了一個非常簡單的JSFiddle來演示它。

希望有幫助!

相關問題