<form action="results.html" method="GET">
<select class="soflow" onchange="getGoalkeeper(this)">
<option value="">Select a stat...</option>
<option value="saves">Saves</option>
<option value="goals_conceded">Goals Conceded</option>
<option value="clean_sheets">Clean Sheets</option>
<option value="penalties_saved">Penalties Saved</option>
<option value="goals_scored">Goals</option>
<option value="assists">Assists</option>
<option value="yellow_cards">Yellow Cards</option>
<option value="red_cards">Red Cards</option>
<option value="penalties_missed">Penalties Missed</option>
</select>
<input type="submit" value="submit"/>
</form>
的index.html
var json = //json data
function getGoalkeeper(selectObject) {
var value = selectObject.value;
var position = 1;
var fr = $(json).filter(function (i,n){return n.element_type===position });
for (var i=0;i<fr.length;i++)
{
document.getElementById('result').innerHTML += "<span class='statistic' id=" + fr[i].id + "><a href='https://platform-static-files.s3.amazonaws.com/premierleague/photos/players/110x140/p" + fr[i].code + ".png'>" + fr[i].clean_sheets + "</a></span>" +"<br />";
}}
的script.js
我正在尝试获取变量&#34; value&#34;替换&#34; clean_sheets&#34;所以而不是&#34; fr [i] .clean_sheets&#34;我想&#34; fr [i]。 +值&#34;但是这不起作用并且正在返回&#34; Uncaught SyntaxError:Unexpected token +&#34;在控制台中。 我该如何解决这个问题?
答案 0 :(得分:0)
简单地说,您必须使用与循环对象属性时相同的方式。我的意思是,与fr[i]
访问媒体资源i
的方式相同,您需要fr[i][value]
才能访问媒体资源value
。
PD:虽然fr
是一个数组,但每个索引的访问方式与对象中的属性相同。