javascript - 将 ASP.NET 标签 ID 传递给 Javascript

标签 javascript asp.net

当我使用下面的代码时,我可以获得要更改的标签值

  document.getElementById('<%=lblDropdownValue.ClientID %>').innerHTML =     ddl.value;

但我想将它作为参数传递如下所示,但它似乎不起作用。

<table>
    <tbody>
        <tr>
            <td>
              <asp:DropDownList id="ddlProducts" runat="server" 
           onclick="myfunction(this,'<%=lblDropdownValue.ClientID %> "')">

                <asp:ListItem Selected="True" Value="-1"> Please Select </asp:ListItem>
                <asp:ListItem Value="Car"> BMW </asp:ListItem>
                <asp:ListItem Value="Music"> MP3 </asp:ListItem>

             </asp:DropDownList>

           </td>
           <td>
               <asp:Label Text="" id="lblDropdownValue" runat="server"/>
           </td><td></td>
       </tr>

   </tbody>

</table>
</div>
</form>
<script>
   function myfunction(ddl, lblText)
   {
      document.getElementById("'"+lblText+"'").innerHTML = ddl.value;          
   }
</script>

最佳答案

把这个放在后面的代码中:

public void Page_Load( ... ) {

    ddlProducts.Attributes["onclick"] = "myfunction(...)";

}

并从 ASPX 中删除 onclick

这样做的原因是您希望在客户端附加 onclick。您现在拥有的是一个在服务器端评估的属性,因此它无法正确地提供给客户端。

关于javascript - 将 ASP.NET 标签 ID 传递给 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28465305/

相关文章:

javascript - 模块模式中的 this 关键字?

javascript - .js、css 或 html - 如何将对象更改为两种不同的颜色?

javascript - 有没有办法允许 CKEditor5 的所有 html 属性或使用通配符?

javascript - 在 asp.net 中设置 facebook 按钮的样式

c# - 在 .net framework 4.5 上运行 kestrel 网络服务器

asp.net - 使用 IFRAME 制作简单的广告。对SEO不利吗?

c# - GridView RowUpdating 没有获取新数据

javascript - mousemove 不起作用,只能在单击时运行

javascript - 主干未捕获类型错误

c# - 在超链接中导航 Url 不会重定向我的页面?