簡體   English   中英

通過javascript替換aspx頁面中節點的值

[英]Replace the value of a node in aspx page via javascript

我的aspx頁面具有以下節點。

<body onload="return window_onload()" onunload="UnRegisterForAllEvents(varDDSC)">
<form>
Select your favorite Color:
<select id="myList">

  <option>red</option>
  <option>yellow</option>  
  <option>blue</option>
</select>
<input id="Submit1" type="submit" value="submit" onclick="favcolor()" />
</form>

      <object name="SVGEmbed" id="svgembd" type="image/svg+xml" align="left" width="100%" height="100%">          
        <param name="src" id="spara" value="VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour=red&backgroundFill=none&tooltipFontsize=13" />       
      </object>
</body>

現在,我的要求是我必須從“ mylist”中選擇一個選項(顏色),並用id“ spara”替換param的值以包含該顏色,如下所示。假設我從mylist中選擇了黃色,則應該出現param節點如下。

<object name="SVGEmbed" id="svgembd" type="image/svg+xml" align="left" width="100%" height="100%">          
            <param name="src" id="spara" value="VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour=yellow&backgroundFill=none&tooltipFontsize=13" />       
          </object>

我該如何做到這一點請幫助:)

怎么樣:

$("#myList").on('change',function(){

    $("#spara").attr('value','VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour='+ $("#myList option:selected").text() +'&backgroundFill=none&tooltipFontsize=13');
});

一個適合您的JSFiddle

只需掛接到選項列表的change事件即可:

$('#myList').on('change', function (){
    var paramValue = $('#myList option:selected').text();
    $('#spara').attr('value', 'VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour=' + paramValue + '&backgroundFill=none&tooltipFontsize=13paramValue');
}

首先,param是HTML5元素,因此它不能嵌套在“ object”標簽中,因此請將param與object標簽分開。

<param name="src" id="spara" value="VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour=yellow&backgroundFill=none&tooltipFontsize=13" />  

現在運行這個

$('#myList').on('change', function (){
    var paramValue = $('#myList option:selected').text();
    $('#spara').attr('value', 'VNETSVGLoader/SVGLoader.aspx?SVGFile=<%=Server.UrlEncode(GetFileUrl)%>&onTagClick=onTagClick&hiliteColour=' + paramValue + '&backgroundFill=none&tooltipFontsize=13paramValue');
}

我親自測試了它的工作原理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM