gpt4 book ai didi

javascript - 如何只重新加载一行

转载 作者:行者123 更新时间:2023-11-30 17:51:10 25 4
gpt4 key购买 nike

我有 3 列,列值不断从数据库中动态更改。所有行的最后一列都有刷新按钮。

当我点击刷新按钮时,应该只刷新那个特定的行。

但事实并非如此。当我单击第一行刷新按钮时,它会刷新并显示警报值,但是当我单击除第一行之外的表的其他刷新按钮时,它们不会刷新。它们甚至不在警报中显示值。

这是我用过的代码:

ajax,JQuery

<script type="text/javascript">
var id;

function refreshRecord(value) {
id = value;
alert("id is " + id);
}

$(document).ready(function() {
$(this).("#refresh").click(function() {
var fileId = id;
alert("ajax id is " + id);
$.ajax({
type: "post",
url: "checkStatusAndNumRecs",
data: {
fileId: fileId
},
success: function(data) {
$("#div1").html(data);
},
error: function(data) {
$("#div1").html("It was a failure !!!");
}
});
});
});
</script>

html代码

<table border="1">
<tr>
<td>2</td>
<td>1</td>
<td>3</td>
<td>
<input type="radio" name="submit" value="submit" onclick="refreshRecord(this.value)" id="refresh">
</td>
</tr>
<tr>
<td>7</td>
<td>9</td>
<td>7</td>
<td>
<input type="radio" name="submit" value="submit" onclick="refreshRecord(this.value)" id="refresh">
</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
<td>6</td>
<td>
<input type="radio" name="submit" value="submit" onclick="refreshRecord(this.value)" id="refresh">
</td>
</tr>
<tr>
<td>9</td>
<td>6</td>
<td>5</td>
<td>
<input type="radio" name="submit" value="submit" onclick="refreshRecord(this.value)" id="refresh">
</td>
</tr>
</table>

最佳答案

您有多个具有相同 ID 的单选按钮。那是无效的 html。使用类代替

<input type="radio" name="submit" ... class="refresh">

并将您的 javascript 更改为

$("input.refresh").click(function() {

此外,您不应该对同一事件使用两个不同的 onclick 事件(我什至不确定它们的顺序是否正确,可能是随机的。)
您可以从您的 html 中删除 onclick="refreshRecord(this.value)" 并从您的 javascript 中删除 refreshRecord 函数并将 id 替换为 this.value$("input.refresh").click(function() { ... }) 中。

关于javascript - 如何只重新加载一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19006244/

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