javascript - 生成的表单不喜欢 javascript 更改字段值函数

标签 javascript html

我之前曾被帮助使用 jquery 工作来获得 javscript 函数 - 请参阅: JS Fiddle working example

$("[name='COLUMN35']").on('change', function() {
  var val = $(this).val();
  var reverseVal = (val == 'Yes' ? 'No' : 'Yes')
  $("input[value='" + reverseVal + "']:not([name='COLUMN35'])").prop('checked', true);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span>Option 1</span><br />
<form>
<label><input type="radio" name="option1" id="option1Yes" value="Yes">Yes</label>
<label><input type="radio" name="option1" id="option1No" value="No">No</label>
<br /><br />
<span>Option 2</span><br />
<label><input type="radio" name="option2" id="option2Yes" value="Yes">Yes
</label>
<label><input type="radio" name="option2" id="option2No" value="No">No</label>
<hr />
<span>Unsubscribe from all</span><br />
<label><input type="radio" name="COLUMN35" id="unsubYes" value="Yes">Yes</label>
<label><input type="radio" name="COLUMN35" id="unsubNo" value="No">No</label>
<br /><br />
<input type="submit" value="submit">
</form>

在生成的表单页面中实现相同的代码后,我不确定为什么它不起作用 - 请参阅: Webform with code not working

不幸的是,我无法编辑任何表单元素,因为它们是自动生成的,但希望有人可能有不同的想法来实现 - 通常越困惑越好 E.G 目标要更改相关 id,并且可能不使用 jquery

最佳答案

尝试将代码放入$(document).ready(function(){}) 例如

$(document).ready(function(){
$("[name='COLUMN35']").on('change', function(){
    var val = $(this).val();
    var reverseVal = (val == 'Yes' ? 'No' : 'Yes')
    $("input[value='"+reverseVal+"']:not([name='COLUMN35'])").prop('checked', true);
});
});

关于javascript - 生成的表单不喜欢 javascript 更改字段值函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45004701/

相关文章:

html - 具有不同长度片段的简单 mpeg dash 播放列表

javascript - 为 Firefox 扩展设置弹出窗口标题

javascript - 将 JSON 数组放入 Handlebars

javascript - ES6 setter 函数无法识别

javascript - 正则表达式匹配特定字符之前和之后的字符串

java - 如何使我的网站与 servlet 通信?

javascript - 如何在 Material ui react 中的makeStyles中使用状态值

html - 在 img html 之上添加图像

javascript - 图像上的标题文字

javascript - Node js 脚本崩溃 : Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)