Javascript 根据AJAX结果弹出内容
我在网络开发方面没有那么丰富的经验,所以对于新手犯的错误我深表歉意;) 在HTML中,我想创建一个动态弹出窗口(由CSS隐藏的div)。点击一个按钮,我正在执行一个AJAX post请求。请求的结果是一个字符串,该字符串存储在HTML页面的隐藏输入字段中 弹出窗口包含一个包含由字符串提交的内容的表。 但是现在我想通过PHP$\u GET或$\u POST请求检索字符串 这在目前不起作用,我不明白为什么。 打开弹出窗口时,我发现以下错误: 注意:未定义索引:popupcontenthidden在 警告:中为foreach()提供的参数无效 HTML:Javascript 根据AJAX结果弹出内容,javascript,php,html,ajax,post,Javascript,Php,Html,Ajax,Post,我在网络开发方面没有那么丰富的经验,所以对于新手犯的错误我深表歉意;) 在HTML中,我想创建一个动态弹出窗口(由CSS隐藏的div)。点击一个按钮,我正在执行一个AJAX post请求。请求的结果是一个字符串,该字符串存储在HTML页面的隐藏输入字段中 弹出窗口包含一个包含由字符串提交的内容的表。 但是现在我想通过PHP$\u GET或$\u POST请求检索字符串 这在目前不起作用,我不明白为什么。 打开弹出窗口时,我发现以下错误: 注意:未定义索引:popupcontenthidden在
<div class="popupcontent">
<span class="helper"></span>
<div>
<div class="popupclose">X</div>
<h3>UPDATE DATABASE ENTRY</h3>
<h4>Enter values:</h4>
<table id="popupresult">
<form name='form' action="" method='post'>
<input type='text' name='popupcontenthidden' id='popupcontenthidden'>
</form>
<tr>
<th>Field</th>
<th>Type</th>
<th>Null</th>
<th>Key</th>
<th>Default</th>
<th>Extra</th>
<th>Value</th>
</tr>
<?php
$rows = json_decode($_POST['popupcontenthidden']);
foreach ( $rows as $print ) {
?>
<tr>
<td><?php echo $print->Field; ?></td>
<td><?php echo $print->Type; ?></td>
<td><?php echo $print->Null; ?></td>
<td><?php echo $print->Key; ?></td>
<td><?php echo $print->Default; ?></td>
<td><?php echo $print->Extra; ?></td>
</tr>
<?php } ?>
</table>
</div>
$.ajax({
type:'POST',
url: '../wp-content/plugins/ars-management/admin/ars-management-admin-ajax.php',
data: {function: "update", entries: entries},
success: function(response) {
var rows = response;
//hand data to html hidden input
document.getElementById("popupcontenthidden").value = rows;
//open popup on click
$(".popupcontent").show();
}
});
我知道发生第二个错误是因为$rows为空。
但是我如何解决这个问题并从输入字段中检索字符串呢?我可以确认字符串已正确存储在输入字段中,因此所有AJAX内容都可以正常工作
非常感谢你 这里有一种解决方案: HTML: PHP:
作为javascript数据的一部分,您需要发送popupcontenthidden
,否则无法在phpIf中使用它如果将ajax代码放入弹出窗口中。它会很好地工作。@mdeora你需要什么?@rawathemant不为我工作。。。无论如何谢谢你@桑斯威夫特웃 对不起,我真的不明白。你能解释一下吗?
<div class="popupcontent">
<span class="helper"></span>
<div class="popupclose">X</div>
<h3>UPDATE DATABASE ENTRY</h3>
<h4>Enter values:</h4>
<table id="popupresult">
<thead>
<tr>
<th>Field</th>
<th>Type</th>
<th>Null</th>
<th>Key</th>
<th>Default</th>
<th>Extra</th>
<th>Value</th>
</tr>
</thead>
<tbody id="myPopupContentTableBody"></tbody>
</table>
</div>
$.ajax({
type:'POST',
url: '../wp-content/plugins/ars-management/admin/ars-management-admin-ajax.php',
data: {function: "update", entries: entries},
success: function(response) {
$('#myPopupContentTableBody').html(response);
//open popup on click
$(".popupcontent").show();
}
});
<?php
...
$rows = myPHPCalculation;
foreach ($rows as $print){
echo '
<tr>
<td>'.$print['Field'].'</td>
<td>'.$print['Type'].'</td>
<td>'.$print['Null'].'</td>
<td>'.$print['Key'].'</td>
<td>'.$print['Default'].'</td>
<td>'.$print['Extra'].'</td>
</tr>
';
}
...