Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单选按钮一次不工作_Javascript_Html - Fatal编程技术网

Javascript 单选按钮一次不工作

Javascript 单选按钮一次不工作,javascript,html,Javascript,Html,我试图在更改单选按钮时更改提交按钮的文本。我的html部分代码为: <input type="radio" onclick="check()" name="radio-view" data-icon="segment-titlestyle-segonly" id="segment1" value="Yes"/> <label for="segment1" id="controls"> <span class="ui-btn-text-controls">

我试图在更改单选按钮时更改提交按钮的文本。我的html部分代码为:

<input type="radio" onclick="check()" name="radio-view"  data-icon="segment-titlestyle-segonly"  id="segment1" value="Yes"/> 
<label for="segment1"  id="controls">
<span class="ui-btn-text-controls">Yes</span>
</label> 

<input type="radio" onclick="check()" name="radio-view" data-icon="segment-titlestyle-segonly" id="segment2" value="No" checked="checked"/>  
<label for="segment2" id="controls">
<span class="ui-btn-text-controls">No</span>
</label> 


<input type="submit" value="send" name="sendbutton" id="sendbutton"/>

但这并没有改变测试。原因是什么?

如果您决定直接寻址元素,请正确使用它们的名称:

var x = document.f1['radio-view'];
。。。由于无法使用点语法访问名称为无效标识符的属性
document.f1.radio视图
被视为
document.f1.radio-view
,这显然毫无意义

但实际上,我宁愿完全跳过这一部分:如果单击单选按钮,它肯定设置为选中。所以这个

<input type="radio" onclick="check(this)" ... />
...
function check(button) {
  document.f1.sendbutton.value = button.value === 'Yes' ? 'PROCEED' : 'SEND';
}

...
功能检查(按钮){
document.f1.sendbutton.value=button.value==‘是’?‘继续’:‘发送’;
}
。。。应该足够了,如图所示。

请参见此处的演示:

//HTML
团体*
对
不
//JS
$(“#s1”)。单击(函数(){
document.getElementById(“submitBtn”).value=“单击是”;
返回false;
});
$(“#s2”)。单击(函数(){
document.getElementById(“submitBtn”).value=“未单击”;
返回false;
});

+1
f1
是包含这些控件的
表单的
名称
属性,对吗?@kol是的,应该是-整个问题才有意义。)
<input type="radio" onclick="check(this)" ... />
...
function check(button) {
  document.f1.sendbutton.value = button.value === 'Yes' ? 'PROCEED' : 'SEND';
}
//HTML
<form>
    <fieldset id="SPserviceStatus" data-role="controlgroup" data-type="horizontal" data-mini="true">
                    <legend>Group<span class="required">*</span></legend>
                    <input type="radio"  name="ss" id="s1" value="Yes">
                    <label for="serviceStatus1">Yes</label>
                    <input type="radio"  name="ss" id="s2" value="No"  checked="checked">
                    <label for="serviceStatus2">No</label>
                </fieldset>
                        <input type='submit' id='submitBtn' value='SUBMIT' />
</form>

//JS
$("#s1").click(function () {
    document.getElementById("submitBtn").value = "Yes Clicked";
    return false;
});
$("#s2").click(function () {
    document.getElementById("submitBtn").value = "No Clicked";
    return false;
});