从<span>中的<span>属性中获取值

时间:2013-09-12 19:28:28

标签: javascript asp.net

我的vb.net程序正在生成一个包含多个复选框的复选框列表。在构建复选框时,我还设置了几个属性。当用户单击该框时,我正在尝试访问javascript中的属性值。

vb.net看起来像这样:

L = New ListItem
thisROLEn = "A"
L.Value = dr("apr_key")
L.Text = Trim(dr("apr_name"))
L.Attributes("Role" & thisROLEn) = Trim(dr("ROLE_DESC"))
L.Attributes("Title") = AppToolTip
AppList.Items.Add(L)

以下是生成的html的TR部分:

<tr>
<td>
    <span RoleA="User" RoleB="Admin" Title="Approve access">
        <input id="MainContent_AppList_0" type="checkbox" name="ctl00$MainContent$AppList$0" value="7" />
        <label for="MainContent_AppList_0">Finance</label>
    </span>
</td>

我可以很好地获得复选框的值。我的问题是如何从javascript访问“RoleA”的值?

3 个答案:

答案 0 :(得分:1)

基于您的评论的基本想法。

var checkbox= document.getElementById("MainContent_AppList_0");
var span = checkbox.parentNode;
var isChecked = checkbox.checked;
var roleA = span.RoleA;

答案 1 :(得分:1)

您可以按getAttribute

获取属性值
document.getElementById('MainContent_AppList_0').parentNode.getAttribute("roleA")

答案 2 :(得分:1)

正如您所提到的,您可以访问复选框,基于我在此处创建了一个示例伪代码:

var a=document.getElementsById('ctl00$MainContent$AppList$0');
var b = a.parentNode;
var roleA = b.getAttribute('RoleA');

希望它有所帮助。