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

时间:2015-02-22 23:45:29

标签: javascript jquery forms input

我正在尝试在我的表单上实现一个简单的反垃圾邮件字段,其中服务器生成随机字符串,将其发送给用户,然后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,如果我通过开发人员工具控制台键入相同的代码,我可以获得反转的输入值,但页面本身不起作用。谢谢!

4 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

你有一个错误,在文档就绪回调中,除了它没关系

&#13;
&#13;
$(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);
})
&#13;
<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" />
&#13;
&#13;
&#13;

答案 2 :(得分:0)

var test= document.getElementById("mytext");
test.value = "My default value";

答案 3 :(得分:0)

如果id $('#simple').val(reverse);是唯一的,则

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

选中此jQuery change input text value