2015-12-30 48 views
1

我正在使用JQuery的html()函數在一組選項下拉列表中動態地編碼JSON值。我的大多數網站的工作完全按預期:jquery html()函數編碼空間值選項元素的值參數

$('#parameters').html('<option value={"name":"testsalary"}></option>'); 

<div id=​"parameters">​<option value=​"{"name":​"testsalary"}>​</option>​</div>​ 

但是,如果JSON對象有它打破了通過添加一個雙引號,這不是原來有一個空格:

$('#parameters').html('<option value={"name":"test salary"}></option>'); 

<div id=​"parameters">​<option value=​"{"name":​"test" salary"}>​</option>​</div>​ 

有誰知道周圍的方式這個?

回答

1

您需要添加引號'圍繞你的價值

$('#parameters').html('<option value=\'{"name":"test salary"}\'></option>'); 

這將讓你

<div id=​"parameters">​<option value=​'{"name":​"test salary"}'>​</option>​</div>​ 
+0

啊不知道這一點。很高興知道謝謝。 – DeeVu

0

作爲解決方法,我決定將空格編碼爲& nbsp,並在收到後將其轉換爲後端。

所以......

$('#parameters').html('<option value={"name":"test salary"}></option>'); 

成爲

$('#parameters').html('<option value={"name":"test&nbspsalary"}></option>'); 

不幸的是,它不編碼的值參數的空間。