我要做的是添加<select>
标记并执行if
声明。
我确实有错误。我认为这是我连接字符串的方式..
这是我的代码:
var load_volumes = jQuery('.micronic').val();
var arr_volumes = load_volumes.split(',');
var count_volumes = arr_volumes.length;
for(x=0; x<count_volumes; x++){
jQuery('.append_here').append("<select class='volumes'>"
+"<option>Choose Volume</option>"
+"<option"
+ if(arr_volumes[x] == 0.5){
+ "selected"
+ }
+">0.5</option>"
+"<option>0.75</option>"
+"<option>1.10</option>"
+"<option>1.40</option>"
+"<option>2.0</option>"
+"<option>2.5</option>"
+"<option>3.0</option>"
+"<option>4.0</option>"
+"<option>6.0</option>"
+"<option>7.5</option></select>  ");
}
提前感谢。
答案 0 :(得分:1)
请参阅下面的答案。您应该考虑使用模板引擎,例如把手。
jQuery('.append_here').append("<select class='volumes'>"
+"<option>Choose Volume</option>"
+"<option"
+ (arr_volumes[x] == 0.5? " selected" : "")
+">0.5</option>"
+"<option>0.75</option>"
+"<option>1.10</option>"
+"<option>1.40</option>"
+"<option>2.0</option>"
+"<option>2.5</option>"
+"<option>3.0</option>"
+"<option>4.0</option>"
+"<option>6.0</option>"
+"<option>7.5</option></select>  ");
答案 1 :(得分:1)
用三元选择器替换if
行:
+ (arr_volumes[x] == 0.5? " selected" : "")
答案 2 :(得分:1)
append函数应该有一个元素作为输入,但这只会产生警告。代码中的问题是
+ if(arr_volumes[x] == 0.5){
+ "selected"
+ }
理想情况下,请提前设置此值。您的代码可能如下所示:
var volumes = (arr_volumes[x] == 0.5) ? " selected" : "";
var select = "<select class='volumes'>"
+"<option>Choose Volume</option>"
+"<option"
+ volumes
+">0.5</option>"
+"<option>0.75</option>"
+"<option>1.10</option>"
+"<option>1.40</option>"
+"<option>2.0</option>"
+"<option>2.5</option>"
+"<option>3.0</option>"
+"<option>4.0</option>"
+"<option>6.0</option>"
+"<option>7.5</option></select>  ";
jQuery('.append_here').append(select);
但最后要考虑这样的事情,使其变化:
var values = [0.5, 0.75, 1.10, 1.40, 2.0, 2.5, 3.0, 4.0, 6.0, 7.5];
var content = "<select class='volumes'>"
for(var i=0; values.length; i++) {
content += "<option";
content += (arr_volumes[x] == values[i]) ? " selected" : "";
content += ">" + values[i] + "</option>";
}
content += "</select>";
答案 3 :(得分:0)
尝试这种方式选择
var s="";
if(arr_volumes[x] == 0.5){
s=" selected " ;
}
jQuery('.append_here').append("<select class='volumes'>"
+"<option>Choose Volume</option>"
+"<option"
+ s
+">0.5</option>"
+"<option>0.75</option>"
+"<option>1.10</option>"
+"<option>1.40</option>"
+"<option>2.0</option>"
+"<option>2.5</option>"
+"<option>3.0</option>"
+"<option>4.0</option>"
+"<option>6.0</option>"
+"<option>7.5</option></select>  ");