这是我的标签。
<label class="control-label " for="no1" id="lbl_count">0</label>
<button type="submit" class="btn btn-primary" id="submit_btn">Add to cart</button>
这是我尝试将jsp页面中的raw量设置为标签的函数。但它没有用。标签和按钮都不在同一个div中。但它们都是同一种形式。
<script>
$('document').ready(function() {
$('#submit_btn').click(function() {
var x = document.getElementById("mytable").rows.length;
alert(x);
// $("label[for='no1']").text(x);
// $("#lbl_count").text(x);
});
});
</script>
我尝试了几种方式,他们没有工作..警报正在工作。这意味着数据即将到来。那么如何解决这个问题。请帮我。谢谢。
答案 0 :(得分:1)
在这种情况下,您无法看到标签的更改,因为在点击提交按钮后,页面刷新(显示原始状态)。尝试阻止元素的默认事件,这样就可以看到标签上的更改。
<script>
$('document').ready(function() {
$('#submit_btn').click(function(e) {
e.preventDefault(); //<-add ^this
var x = document.getElementById("mytable").rows.length; // use this or try with static value like var x = "23";
$("#lbl_count").text(x);
});
});
</script>
但是,表格不会提交。如前所述,要保存记录,请改用ajax post。
AJAX示例
<强> HTML 强>
<form action="">
<label for="no1" id="lbl_count">0</label>
<input type="text" name="var1" id="var1"/>
<button type="submit" id="submit_btn">Add to cart</button>
</form>
<强> JS 强>
$('document').ready(function() {
$('#submit_btn').click(function(e) {
e.preventDefault();
$.ajax({
type : 'post',
data : 'var1='+$('#var1').val(),
url : 'your_jsp_process_page.jsp',
success : function(data){
var x = 'hello';
$("#lbl_count").text(x);
}
});
});
});
<强> your_jsp_process_page.jsp 强>
在此页面中,需要检索从ajax发送的值。在此示例中,使用名称var1
检索它。您可以在此处查看数据键和值配对data : 'var1='+$('#var1').val(),
。