0
 <input id="tid" type="radio" name="t" value="">
    <label for="tid">
        Technology</label>

    <input id="sid" type="radio" name="t" value="">
    <label for="sid">
        Science</label>
    <asp:Button runat="server" ID="btn" Text="Submit" OnClientClick="return xyz()" />


 <script>
        function xyz() {

            var x = document.getElementsByName("t");
            var isChecked = false;
            var message = "";
            for (var i = 0; i < x.length; i++) {

                if (x[i].checked) {

                    isChecked = true;
                    message = x[i].nextSibling().innerHTML;
                    alert(message);
                    break;
                }

            }

            if (isChecked == false) {
                alert("Select");

            }

            return false;



        }

我无法获取文本警报框;为什么 NextSibling 方法在这里不起作用?getelementbyname 是否也获取与单选按钮关联的标签?还是会得到只有单选按钮的数组?我不想使用值字段..thks...

4

4 回答 4

1

工作演示http://jsfiddle.net/cse_tushar/Pv6EJ/

nextSibling()是错的

利用

message = x[i].nextSibling.innerHTML;

像这样叫你javascript函数

onclick="xyz()";

不是

OnClick="return xyz()"
于 2013-07-26T06:30:21.803 回答
0

nextSibling 是一个属性而不是一个函数,而不是 nextSibling 使用 nextElementSibling 因为 nextSibling 将返回文本节点

message = x[i].nextElementSibling.innerHTML;
于 2013-07-26T06:32:10.680 回答
0

nextSibling是属性而不是函数。使用是这样的:

message = x[i].nextSibling.innerHTML;

您未定义的原因是innerHTML单选按钮中没有 persent。如果要检索存储在<label>标签中的值,需要将单选按钮的值设置为标签文本,然后使用 value 属性:HTML:

<input id="tid" type="radio" name="t" value="tech">
    <label for="tid">
        Technology</label>
<input id="sid" type="radio" name="t" value="science">
<label for="sid">
    Science</label>

Javascript:

for (var i = 0; i < x.length; i++) {
            if (x[i].checked) {
                isChecked = true;
                message = x[i].value;
                alert(message);
                break;
            }

        }
于 2013-07-26T06:29:51.647 回答
0

用你的例子试试这个小提琴测试链接

改变这个

 message = x[i].nextSibling().innerHTML;

 message = x[i].nextSibling.nextSibling.innerHTML;

希望能帮助到你。干杯

于 2013-07-26T07:04:56.367 回答