无法使用 JavaScript 更改表单输入值

Can't change form input value using JavaScript

我正在尝试在我的表单上实现一个简单的反垃圾邮件字段,其中服务器生成一个随机字符串,将其发送给用户,然后 JavaScript 在提交之前反转该字符串。如果字符串不匹配,提交将作为垃圾邮件丢弃。问题是我似乎无法获得 JavaScript 或 jQuery 来反转输入值。

   $(document.ready(function() {
    var reverse = $('#simple').val().split("").reverse().join("");
    document.getElementById('simple').setAttribute('value', reverse);
}))

使用

$('#simple').val(reverse);

而不是 setAttribute 方法也失败了。

输入字段本身是:

        <input type="text" id="simple" name="simple" value="abcde" />

jQuery 被包含在内,如果我通过开发人员工具控制台输入相同的代码,我可以获得要反转的输入值,但页面本身不起作用。谢谢!

var test= document.getElementById("mytext");
test.value = "My default value";
$(document.ready(function() {
    var reverse = $('#simple').val().split("").reverse().join("");
    document.getElementById('simple').value =  reverse;
});
如果 id simple 是唯一的,

$('#simple').val(reverse); 应该可以工作。(没有其他具有相同 id 的对象)。您也可以使用 $('input[name=simple]').val(reverse);

勾选这个jQuery change input text value

你有一个错误,在文档就绪回调中,除此之外没问题

$(document).ready(function() {
  //      ^ need to close the parenthesis here 
  var reverse = $('#simple').val().split("").reverse().join("");
  $('#simple').val(reverse)
    //or document.getElementById('simple').setAttribute('value', reverse);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" id="simple" name="simple" value="abcde" />