我知道答案可能会非常简单,但我不会因为没有让它发挥作用而失去理智:
<button id="buttonid<?php echo $i?>" onclick="addShift(this.id)">+</button>
<script>
function addShift(id){
alert(id);
$('#id').replaceWith( "<h2>TEST</h2>" );
}
</script>
警告显示正确的ID。但我不能让.replaceWith函数工作。
$("button").replaceWith( "<h2>TEST</h2>" );
顺便说一句。我在这里基本上没有提到将jtml ID提交给javascript的内容?谢谢!
答案 0 :(得分:1)
我可能误解了这个问题,但我认为这是因为你使用字符串'#id
'而不是id
的值。
试试这个:
<button id="buttonid<?php echo $i?>" onclick="addShift(this.id)">+</button>
<script>
function addShift(id){
alert(id);
$('#'+id).replaceWith( "<h2>TEST</h2>" );
}
</script>
您可能认为Javascript在支持字符串插值方面与PHP类似。这意味着,让你在PHP中执行类似$variable = 'me'; echo "$variable is cool";
的操作,并打印出me is cool
。但Javascript不这样做。您需要使用字符串连接,即alert(variable + ' is cool')
。