我在表格中具有唯一ID的所有行的第一列中有 HTML按钮。我想用ajax的成功替换输入标签的特定id的按钮。
<td>
<button class="btn btn-success" id="1" type="button">Verify</button>
</td>
从ajax成功,我想替换下面的id 1的td中的按钮
<input type='text' name='someName' value='some value from ajax response'>
我尝试使用替换但未使用
var html = '<input type="text" name="someName" value="some value from ajax response">';
var parent = document.getElementById(1).parentNode;
parent.innerHTML=parent.replaceChild(html,parent.childNodes[0]);
答案 0 :(得分:1)
一个简单的解决方案是设置HTML
var html = '<input type="text" name="someName" value="some value from ajax response">';
var parent = document.getElementById('1').parentNode;
parent.innerHTML = html;
<table>
<td>
<button class="btn btn-success" id="1" type="button">Verify</button>
</td>
</table>
答案 1 :(得分:0)
对于此示例,您可以使用parent.innerHTML = html
replaceChild
接受一个节点,而不是一个html字符串。所以为了更接近你原来的想法,你可以做到
node = document.createElement("input");
node.id = ...; // set other properties
parent.replaceChild(node, parent.firstElementChild);
答案 2 :(得分:0)
您可以使用jQuery.fn.replaceWith()
var html = '<input type="text" name="someName" value="some value from ajax response">';
$("#1").replaceWith(html);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn btn-success" id="1" type="button">Verify</button>
答案 3 :(得分:-1)
您可以使用条件语句来解决此问题。
(Your Condition) ? <button class="btn btn-success" id="1" type="button">Verify</button> : <input type='text' name='someName' value='some value from ajax response'>