gpt4 book ai didi

javascript - 如何根据用户输入的 HTML 更新多个 span 元素

转载 作者:行者123 更新时间:2023-11-30 08:59:06 25 4
gpt4 key购买 nike

我有一个至少有 200 个输入字段的巨大表单- text/radio/checkboxes .

我将它分成几个部分以很好地构建它,并且每个部分都有一个更新按钮,它接受用户输入并将其保存到数据库中。这是通过 Ajax 完成的,所以我不必重新加载页面。

如何轻松更新 <span> s 对应于用户输入的任何输入字段而无需重新加载页面?我必须做一个$("#spanid").html($("#input1").val())吗?在每个 <span> item 或者有没有简单的方法来做到这一点?

这是表单的一小部分代码。

HTML

 <form id="history" name="history" action="" method="post"> 
<table class="normal">
<tr><th colspan="8">HISTORY</th>
</tr>
<tr><td style="width:200px"><b>Chief Complaint Location</b></td>
<td style="width:450px"><b>Comment</b></td>
<td><b> Previous</b> </td>
</tr>
<tr><td>Head</td>
<td ><input type="text" maxlength="100" name="headH" id="headH" ></td>
<td class="data2"><span id="headSpan"><%=msmtCommentHead%></span></td>
</tr>
<tr><td>Neck</td>
<td><input type="text" maxlength="100" name="neckH" id="neckH" ></td>
<td class="data2"><span id="neckSpan"><%=msmtCommentNeck%></span></td>
</tr>
<tr><td>Upper Extremeties</td>
<td><input type="text" maxlength="100" name="upperExtremetiesH" id="upperExtremetiesH"></td>
<td class="data2"><span id="ueSpan"><%=msmtCommentUpperExtremeties%></span></td>
</tr>
<tr><td>Thoracic Spine</td>
<td><input type="text" maxlength="100" name="thoracicSpineH" id="thoracicSpineH"></td>
<td class="data2"><span id="tsSpan"><%=msmtCommentThoracicSpine%></span></td>
</tr>
<tr><td><input type="button" id="submitHistory" value="Update"/></td></tr>
</table>
</form>

Javascript:

   $(function(){
$("#submitHistory").click(function() {
var query = $("#history").serialize();
$.ajax( {
type: "POST",
url: "/oscar/cmcc/History.do",
dataType: "json",
data: query
});
document.getElementById('history_cmcc').reset();
var date = new String("<%=date%>");
$("#headSpan").innerHTML = $("#headH").val()+ "," + date;

$("#neckSpan").innerHTML = $("#neckH").val() + ","+ date;


$("#tsSpan").innerHTML = $("#thoracicSpineH").val() + ","+ date;

$("#lsSpan").innerHTML = $("#lumbarSpineH").val() + ","+ date;

$("#leSpan").innerHTML = $("#lowerExtremetiesH").val() + ","+ date;

$("#chSpan").innerHTML = $("#chestHeartH").val() + ","+ date;
}

谢谢!

最佳答案

通常你可以这样做:

$('input[type=text]').each(function() {
$(this).closest('tr').find('span').html($(this).val());
});

$('input:checked').each(function() {

$(this).closest('tr').find('span').html($(this).val());
});

根据 OP 评论更新:

在您的示例中,如果您想将单选按钮左侧的标签放在跨度内,您可以这样做。这取决于您的具体要求。

$('input[type=radio]:checked').each(function() {  
$(this).closest('tr').find('span').html($(this).closest('tr').find('td:eq(0)').text());
});

关于javascript - 如何根据用户输入的 HTML 更新多个 span 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10863604/

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