gpt4 book ai didi

javascript - ajax Jquery后无法获取隐藏字段的值

转载 作者:行者123 更新时间:2023-11-28 01:43:53 26 4
gpt4 key购买 nike

我有一个页面,当单击链接时,它会打开一个弹出框以插入新费用。当这个弹出框打开时,我使用 jquery load() 函数从另一个名为 load_charges.php 的页面上的脚本插入一个包含所有当前费用(从 mysql 加载)的表。

我遇到的问题是我无法访问我刚刚加载的内容中的任何隐藏值我使用:

var charge_id = $(':hidden:first', $(this)).val();  

这通常会获取第一个隐藏元素的值,但如果我尝试从 load_charges.php 的页面加载中获取信息,它就不起作用。我将在下面列出我的代码:

case_cpanel.php:

//带有表单元素的 HTML 表格

<table>
<tr class="lead_hover">
<td>
<form class="calc" title="Case Expense Calculator" style="cursor:pointer;">
<input type="hidden" id="lead_id" value="21946295" />
<input type="hidden" id="final_id" value="74" />
<input name="order" type="hidden" id="final_id" value="3" />
</form>
</td>
</tr>
<tr class="lead_hover">
<td>
<form class="calc" title="Case Expense Calculator" style="cursor:pointer;">
<input type="hidden" id="lead_id" value="21978679" />
<input type="hidden" id="final_id" value="79" />
<input name="order" type="hidden" id="final_id" value="1" />
</form>
</td>
</tr>
</table>

//Jquery加载弹出表单框

$(".calc").click(function () {
var value = $(':hidden:eq(0)', $(this)).val();
$('input[name=lead_id]').val(value);
var value = $(':hidden:eq(1)', $(this)).val();
$('input[name=final_id]').val(value);
var value = $(':hidden:eq(2)', $(this)).val();
$('.order').val(value);
var lead_id = $(':hidden:eq(0)', $(this)).val();
var string1 = "token=<? echo $_SESSION['token']; ?>&lead_id=";
var url = "../ajax/load_charges.php";
var datastring = string1.concat(lead_id);
$('#calc_right_display').html('<div><img src="../imgs/loading4.gif" align="center" /></div>').load(url, datastring).show();
$("#calc_div").overlay().load();
});

load_charges.php://加载新表单元素的表格

<table width="266" border="0" cellpadding="5">
<? do { ?>
<tr>
<td width="163">
<? echo $row_charges[ 'rows'][ 'title']; ?>
</td>
<td width="83">$
<? echo $row_charges[ 'rows'][ 'charge']; ?>
</td>
<td width="27">
<form class="delete_charge" title="Delete Charge" style="cursor:pointer;">
<input type="hidden" id="id1" value "<? echo $row_charges['rows']['id']; ?>">
</form>
</td>
</tr>
<? } while ($row_charges[ 'rows']=m ysql_fetch_assoc($row_charges[ 'query'])); ?>
</table>

//load_charges.php 上的 Jquery 代码

<script>
$(".delete_charge").click(function () { * *
var charge_id = $(':hidden:first', $(this)).val(); * *
var str2 = "token=<? echo $_REQUEST['token']; ?>&delete_charge=true&id=";
var str_lead_id = "&lead_id=<? echo $_REQUEST['lead_id']; ?>";
var url2 = "../ajax/cm_expenses_delete.php";
var datastring2 = str2.concat(charge_id, str_lead_id);

$('#calc_right_display').html('<div><img src="../imgs/loading4.gif" align="center" /></div>').load(url2, datastring2).show();
});
</script>

问题是 var charge_id = $(':hidden:first', $(this)).val();不从刚刚加载的新页面返回任何值。任何帮助将不胜感激。

提前谢谢您。瑞安

最佳答案

由于缺少等号,您在检索值时可能会遇到问题。

此:
<input type="hidden" id="id1" value"<? echo $row_charges['rows']['id']; ?>">

更改为:
<input type="hidden" id="id1" value="<? echo $row_charges['rows']['id']; ?>">

这可以解释它,因为您的输入没有值(value)。

关于javascript - ajax Jquery后无法获取隐藏字段的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20554117/

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