通过 Modal Bootstrap 传递数据并获取 php 变量?
Passing data via Modal Bootstrap and getting php variable?
我正在尝试获取通过 jquery 传递的输入值并设置到 php 变量中,但我不知道该怎么做。
这个按钮有我要发送的值:
<button type='button' data-a='".$fila['idPlaza']."' href='#editarUsuario' class='modalEditarUsuario btn btn-warning btn-xs' data-toggle='modal' data-backdrop='static' data-keyboard='false' title='Editar usuario'><img src='../images/edit.png' width='20px' height='20px'></button>
然后我有这个js代码来发送值:
$(document).on("click", ".modalEditarUsuario", function (e) {
e.preventDefault();
var self = $(this);
$("#a").val(self.data('a'));
$(self.attr('href')).modal('show');
});
我终于有了这个 bootstrap 模态
<!-- MODAL EDITAR-->
<div id="editarUsuario" class="modal fade modal" role="dialog">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h2 class="modal-title">Editar usuario</h2>
</div>
<form name="formularioModificaUsuario" method='post' action="usuarios.php">
<div class="modal-body">
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = ???
?>
</div>
<div class="modal-footer">
<button type="reset" id="cancelar" class="btn btn-danger" data-dismiss="modal" value="reset"><img src='../images/cancel.png' width='20px' height='20px'> Cancelar</button>
<button type="submit" name="submitModifica" id="submit" class="btn btn-primary" value="submit"><img src='../images/save_changes.png' width='20px' height='20px'> Guardar cambios</button>
</div>
</form>
</div>
</div>
</div>
</div>
我的问题是,如何才能将 id='a'
的值输入到 php 变量 $valueA
之后使用?
Php 在您页面上的任何内容之前加载,因此您不能使用 jQuery 或 javascript 设置 php 变量,但可以执行相反的操作。
如果您在加载时最初有文本字段的值,那么您可以在加载时通过 php 设置它,否则您需要提交表单才能使用 [=31] 中输入的值=].
以下代码有效,php设置javascript
<?php
$valueA = "I am value A";
?>
<script language="javascript">
var jsValueA = "<?php echo $valueA; ?>";
alert(jsValueA); // alerts I am value A
</script>
以下代码无效,javascript设置php
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = $("#a").val();
?>
这是错误的,因为当PHP执行时,输入字段还没有被创建,而且jQuery不能在PHP范围内执行。 javascript 和 jQuery 在浏览器级别用于管理用户交互和 DOM 对象和事件,而 PHP 在服务器级别而非浏览器级别使用。
所以如果你想设置一个 php 变量,你只能在服务器脚本加载时设置它,即 php 被执行,它在页面中的任何其他内容之前出现。或者您可以从发布的表单 $_POST
或 URI 查询字符串 $_GET
中获取值
<button type='button' data-a="<?echo $fila['idPlaza'];?>" href='#editarUsuario' class='modalEditarUsuario btn btn-warning btn-xs' data-toggle='modal' data-backdrop='static' data-keyboard='false' title='Editar usuario'>
<img src='../images/edit.png' width='20px' height='20px'>
</button>
在 </body>
标签结束前的 footer 中放入以下代码。
<!-- MODAL EDITAR-->
<div id="editarUsuario" class="modal fade modal" role="dialog">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-content">
</div>
</div>
</div>
</div>
像这样使用脚本。
<script>
$('.modalEditarUsuario').click(function(){
var ID=$(this).attr('data-a');
$.ajax({url:"NewPage.php?ID="+ID,cache:false,success:function(result){
$(".modal-content").html(result);
}});
});
</script>
创建NewPage.php,然后粘贴以下代码。
(请记住,此页面名称 NewPage.php 也在脚本标签中使用。如果您打算更改此页面的名称,请在脚本标签中也更改页面名称。两者都是相关的。)
<?
$ID=$_GET['ID'];
?>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h2 class="modal-title">Editar usuario</h2>
</div>
<form name="formularioModificaUsuario" method='post' action="usuarios.php">
<div class="modal-body">
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = $ID;
?>
</div>
<div class="modal-footer">
<button type="reset" id="cancelar" class="btn btn-danger" data-dismiss="modal" value="reset">
<img src='../images/cancel.png' width='20px' height='20px'> Cancelar</button>
<button type="submit" name="submitModifica" id="submit" class="btn btn-primary" value="submit">
<img src='../images/save_changes.png' width='20px' height='20px'> Guardar cambios</button>
</div>
</form>
我正在尝试获取通过 jquery 传递的输入值并设置到 php 变量中,但我不知道该怎么做。
这个按钮有我要发送的值:
<button type='button' data-a='".$fila['idPlaza']."' href='#editarUsuario' class='modalEditarUsuario btn btn-warning btn-xs' data-toggle='modal' data-backdrop='static' data-keyboard='false' title='Editar usuario'><img src='../images/edit.png' width='20px' height='20px'></button>
然后我有这个js代码来发送值:
$(document).on("click", ".modalEditarUsuario", function (e) {
e.preventDefault();
var self = $(this);
$("#a").val(self.data('a'));
$(self.attr('href')).modal('show');
});
我终于有了这个 bootstrap 模态
<!-- MODAL EDITAR-->
<div id="editarUsuario" class="modal fade modal" role="dialog">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h2 class="modal-title">Editar usuario</h2>
</div>
<form name="formularioModificaUsuario" method='post' action="usuarios.php">
<div class="modal-body">
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = ???
?>
</div>
<div class="modal-footer">
<button type="reset" id="cancelar" class="btn btn-danger" data-dismiss="modal" value="reset"><img src='../images/cancel.png' width='20px' height='20px'> Cancelar</button>
<button type="submit" name="submitModifica" id="submit" class="btn btn-primary" value="submit"><img src='../images/save_changes.png' width='20px' height='20px'> Guardar cambios</button>
</div>
</form>
</div>
</div>
</div>
</div>
我的问题是,如何才能将 id='a'
的值输入到 php 变量 $valueA
之后使用?
Php 在您页面上的任何内容之前加载,因此您不能使用 jQuery 或 javascript 设置 php 变量,但可以执行相反的操作。
如果您在加载时最初有文本字段的值,那么您可以在加载时通过 php 设置它,否则您需要提交表单才能使用 [=31] 中输入的值=].
以下代码有效,php设置javascript
<?php
$valueA = "I am value A";
?>
<script language="javascript">
var jsValueA = "<?php echo $valueA; ?>";
alert(jsValueA); // alerts I am value A
</script>
以下代码无效,javascript设置php
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = $("#a").val();
?>
这是错误的,因为当PHP执行时,输入字段还没有被创建,而且jQuery不能在PHP范围内执行。 javascript 和 jQuery 在浏览器级别用于管理用户交互和 DOM 对象和事件,而 PHP 在服务器级别而非浏览器级别使用。
所以如果你想设置一个 php 变量,你只能在服务器脚本加载时设置它,即 php 被执行,它在页面中的任何其他内容之前出现。或者您可以从发布的表单 $_POST
或 URI 查询字符串 $_GET
<button type='button' data-a="<?echo $fila['idPlaza'];?>" href='#editarUsuario' class='modalEditarUsuario btn btn-warning btn-xs' data-toggle='modal' data-backdrop='static' data-keyboard='false' title='Editar usuario'>
<img src='../images/edit.png' width='20px' height='20px'>
</button>
在 </body>
标签结束前的 footer 中放入以下代码。
<!-- MODAL EDITAR-->
<div id="editarUsuario" class="modal fade modal" role="dialog">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-content">
</div>
</div>
</div>
</div>
像这样使用脚本。
<script>
$('.modalEditarUsuario').click(function(){
var ID=$(this).attr('data-a');
$.ajax({url:"NewPage.php?ID="+ID,cache:false,success:function(result){
$(".modal-content").html(result);
}});
});
</script>
创建NewPage.php,然后粘贴以下代码。 (请记住,此页面名称 NewPage.php 也在脚本标签中使用。如果您打算更改此页面的名称,请在脚本标签中也更改页面名称。两者都是相关的。)
<?
$ID=$_GET['ID'];
?>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h2 class="modal-title">Editar usuario</h2>
</div>
<form name="formularioModificaUsuario" method='post' action="usuarios.php">
<div class="modal-body">
<input type="text" class="form-control" name="idPlaza" id="a">
<?php
$valueA = $ID;
?>
</div>
<div class="modal-footer">
<button type="reset" id="cancelar" class="btn btn-danger" data-dismiss="modal" value="reset">
<img src='../images/cancel.png' width='20px' height='20px'> Cancelar</button>
<button type="submit" name="submitModifica" id="submit" class="btn btn-primary" value="submit">
<img src='../images/save_changes.png' width='20px' height='20px'> Guardar cambios</button>
</div>
</form>