私はSilverlightアプリケーションを使用しています。このアプリケーションは、ブラウザーに読み込まれると、html<param>
タグ(silverlightタグ内にあります<object>
)に値を設定します。後でSLアプリケーションの実行中に、のvalue属性を変更する必要があります <param>
鬼ごっこ。IDでparamタグを取得するクライアント側のjavascript関数を呼び出してから、objById.setAttribute(value、 "my new value")を呼び出すだけで、これを実現しようとしています。ここが奇妙になります。属性を新しい値に設定した後に属性の値を表示するアラートメッセージによると、この方法で属性を設定することは機能しているようです。ただし、アラートダイアログを閉じた後にブラウザでソースを表示すると、Webページのソースに古い値が表示されたままになります。ソースビューに新しい値が表示されない理由はありますか?paramタグには、runat="server"
ロード時にSilverlightアプリケーションによって最初に設定されるため、属性があります。runat = server属性はここで問題を引き起こしますか?
HTML:
<div id="silverlightControlHost">
<object id="silverlightObject" data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param .../>
<param .../>
<param .../>
<param name="initParams" id="Ip" runat="server" />
...
Javascript:
function refreshInitParams(newParams) {
var slObjIp = document.getElementById("Ip");
//Display Initial Value
alert(slObjIp.getAttribute("value").toString());
//Set New Value
slObjIp.setAttribute("value", "New Value");
//Display new value
alert(slObjIp.getAttribute("value").toString());
}