"queue", :size => 40} %> Javasc-6ren">
gpt4 book ai didi

javascript document.getElementById().value 仅适用于数字而不适用于字符串

转载 作者:行者123 更新时间:2023-11-30 13:24:50 24 4
gpt4 key购买 nike

我有一个基于 AJAX 的应用程序,它根据用户输入更新表单中的文本字段。文本字段定义如下:

<%= form.text_field :queue, {:class => "queue_class", :id => "queue", :size => 40} %>

Javascript 代码如下:

document.getElementById('queue').value = <%= @returned_value %>

如果在 Controller 中,我将@returned_value 设置为一个数字,例如:

@returned_value='77777777777'

然后就可以正常工作了。但是,如果我将它设置为一个字符串值,例如:

@returned_value='abcxyz'

然后它就不起作用了,文本字段没有更新,我也没有收到任何错误消息,就像它什么也没做一样。

我也试过这个:

document.getElementById('queue').innerHTML = <%= @returned_value %>

但它不适用于任何返回值,无论是 @returned_value='77777777777' 还是 @returned_value='abcxyz'

有人可以指出我在这里缺少什么吗?

最佳答案

您需要在 JavaScript 中引用字符串:

document.getElementById('queue').innerHTML = '<%= @returned_value %>';

通过 .toString() 将数字强制转换为字符串,但未加引号的字符串将引发解析器错误。

关于javascript document.getElementById().value 仅适用于数字而不适用于字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8873599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com