Javascript getElementById问题

Javascript getElementById问题,javascript,jquery,Javascript,Jquery,我有这个按钮: <input type="button" value="Rep" id="rep" name="rep" class="rep" style="width:50px" onclick="triggerLabel(1);this.disabled=true;addRep(<?php echo $comment_id; ?>);"/> <script type="text/javascript"> functio

我有这个按钮:

<input type="button" value="Rep" 
    id="rep" name="rep" class="rep" style="width:50px" 
    onclick="triggerLabel(1);this.disabled=true;addRep(<?php echo  $comment_id; ?>);"/>

<script type="text/javascript">

     function triggerLabel($commentID)
     {
        var $theID="#"+$commentID;
        var $label=document.getElementById($theID).value;
        alert($label);
     }

</script>
9999没有插入表中…为什么

更新2: 这不起作用:

document.getElementById($commentID).value="88888";

标签没有更改。

您不必为
getElementById
提供
。只有身份证。 所以写下:

var $label=document.getElementById($commentID).value;
另一个选项是通过JQuery
$
函数获取元素。然后您必须提供
#

不要将“#”添加到您的CommentID。 写:


document.getElementById()
不是jQuery,它是一个DOM函数,因此您不需要将
#
放在id的前面

或者正确地使用
getElementById
,即删除

或者使用jQuery:

var $label = $($theID);
请注意,
标签
s没有
属性。如果要获取内部文本,请将
innerHTML
.text()
与jQuery一起使用


另外,在HTML5之前,不允许以数字开头的id。

document.getElementById(“您的id不带字符”)
将返回HTML元素

$(“#您的#id_和#char”)
将返回jQuery对象


您不应该在
document.getElementById()
函数中使用
#
,只使用元素ID。

如果您想使用ID前面的#,您可以使用
querySelector
方法,但与旧浏览器不兼容

不兼容:IE<8,FFox<3.5,Opera<10,Safari<3.2

document.querySelector('#id')

您不应该在您的案例中使用哈希


document.getElementById('#id')

在jquery中,可以使用散列


$('id')

getElementById是DOM,不是本机JS,只有一件事-
没有
value
属性,但是
innerHTML
请参见我的答案,
label
没有
value
属性。改用
innerHTML
“其他浏览器”?除了什么?
document.getElementById($commentID).value="88888";
var $label=document.getElementById($commentID).value;
var $label=$($theID).val()
 function triggerLabel($commentID)
 {
    var $theID=$commentID;
    var $label=document.getElementById($theID).value;
    alert($label);
 }
var $label = document.getElementById($commentID);
var $label = $($theID);