问题
i have a embeded code whhich is detting displayed when i click calculate button
<script type="text/javascript">
function ln(){
document.getElementById('looknorth').innerHTML='<embed bgcolor="#dbdbd3" flashvars="lcId=1169793726234&state=symbol%3D%5Ensebank;range=1d;indicator=ema(13,34,55)+macd+rsi+stochasticfast;charttype=candlestick;crosshair=on;ohlcvalues=0;logscale=on;source=undefined" loop="false" menu="false" name="BANKNIFTY" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://us.js2.yimg.com/us.yimg.com/i/us/fi/yfc/swf/flashchart_1.18.swf" style="height: 775px; width: 550px" type="application/x-shockwave-flash" wmode="opaque"></embed>';
}
</script>
<input type=button style="background-color:#123742; color:#FFFFFF ; font-weight:bold; font-size:15" name=Button2 value=Calculate onClick=ln();></td></tr>
i want to have a drodown menu which takes the value of symbol "symbol%3D%5Ensebank;" from the value of drop down menu.
i added code
<select size="1" name="D1">
<option value="nsei" selected>Nifty</option>
<option value="bsen">Sensex</option>
</select><input type="submit" value="Submit" name="B1" onClick=ln();></p>
but what change to make in embeded code to take symbol values from D1
please help
<div id="looknorth"></div>
<script type="text/javascript">
function ln(vidvar){
tempcell = document.createElement("embed");
tempcell.setAttribute("bgcolor","#dbdbd3");
tempcell.setAttribute("flashvars",
("lcId=1169793726234&state=symbol="
+vidvar+
";range=1d;indicator=ema(13,34,55)+macd+rsi+stochasticfast;charttype=candlestick;crosshair=on;ohlcvalues=0;logscale=on;source=undefined")
);
tempcell.setAttribute("loop","false");
tempcell.setAttribute("menu","false");
tempcell.setAttribute("name","Bank Nifty");
tempcell.setAttribute("pluginspage","http://www.macromedia.com/go/getflashplayer");
tempcell.setAttribute("src","http://us.js2.yimg.com/us.yimg.com/i/us/fi/yfc/swf/flashchart_1.18.swf");
tempcell.setAttribute("style","height: 775px; width: 550px");
tempcell.setAttribute("type","application/x-shockwave-flash");
tempcell.setAttribute("wmode","opaque");
document.getElementById('looknorth').innerHTML=""
document.getElementById('looknorth').appendChild(tempcell);
}
<form name="Video" id="search" onsubmit="ln(search.D1.value)">
<select size="1" name="D1">
<option value="^nsei" selected>Nifty</option>
<option value="^bsesn" >Sensex</option>
</select>
<input type="submit" value="Submit" name="B1" onClick=ln();>
i tried to de-bug the code but still is not working. please help
回答1:
You need to enclose them in a form tag.
<form name="Video" id="search" onsubmit="ln(search.D1.value)">
<select size="1" name="D1">
<option value="nsei" selected>Nifty</option>
<option value="bsen" >Sensex</option>
</select>
<input type="submit" value="Submit" name="B1" />
</Form>
Then, change ln() so that it takes a variable so perhaps try:
<script type="text/javascript">
function ln(vidvar){
tempcell = document.createElement("embed");
tempcell.setAttribute("bgcolor","#dbdbd3");
tempcell.setAttribute("flashvars",
("lcId=1169793726234&state="
+vidvar+
";range=1d;indicator=ema(13,34,55)+macd+rsi+stochasticfast;charttype=candlestick;crosshair=on;ohlcvalues=0;logscale=on;source=undefined")
);
<!-- And so on for the rest of the attributes of the <embed> tag -->
document.getElementById('looknorth').innerHTML=""
document.getElementById('looknorth').appendChild(tempcell);
}
</script>
There might be some bug in this but that's the general idea.
来源:https://stackoverflow.com/questions/10758794/add-variable-in-embeded-object-to-be-displayed-onclick