在引导模式中将javascript ID转换为PHP变量
我让用户点击一个按钮弹出一个引导模式,我将一个javascript变量传递到这个模式中。我希望该变量是一个PHP变量,以便在用户单击按钮后查询该变量以在模式中显示照片。现在,我知道PHP是服务器端,javascript是客户端,这是我迷失的方向。我想它可能需要一些ajax,这不是我的领域 目前我正在使用以下javascript:在引导模式中将javascript ID转换为PHP变量,javascript,php,jquery,ajax,twitter-bootstrap,Javascript,Php,Jquery,Ajax,Twitter Bootstrap,我让用户点击一个按钮弹出一个引导模式,我将一个javascript变量传递到这个模式中。我希望该变量是一个PHP变量,以便在用户单击按钮后查询该变量以在模式中显示照片。现在,我知道PHP是服务器端,javascript是客户端,这是我迷失的方向。我想它可能需要一些ajax,这不是我的领域 目前我正在使用以下javascript: $(document).on("click", ".open-AddBookDialog", function () { var myBookId = $(this)
$(document).on("click", ".open-AddBookDialog", function () {
var myBookId = $(this).data('id');
$(".modal-body #bookId").val( myBookId );});
在模式中,使用以下内容,并在文本框中显示正确的ID:
<input type="text" name="bookId" id="bookId" value="">
用于Ajax解决方案,假设 打开模式按钮
id=“bookid”
是必须传递给Ajax方法以获取图像的图像动态id
<a class="btn btn-primary btn-xs" class="open-modal" href="" id="bookid">Open Modal</a>
模态HTML应该是
<div class="modal fade" id="imagebox" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
<div id="imged"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
注意:如果使用默认行为打开模态数据属性
,则使用模态事件侦听器
并替换单击功能
,如下所示
<a class="btn btn-primary btn-xs" data-id="bookid" data-target="#myModal" data-toggle="modal">Open Modal</a>
对于Ajax解决方案,假设 打开模式按钮
id=“bookid”
是必须传递给Ajax方法以获取图像的图像动态id
<a class="btn btn-primary btn-xs" class="open-modal" href="" id="bookid">Open Modal</a>
模态HTML应该是
<div class="modal fade" id="imagebox" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
<div id="imged"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
注意:如果使用默认行为打开模态数据属性
,则使用模态事件侦听器
并替换单击功能
,如下所示
<a class="btn btn-primary btn-xs" data-id="bookid" data-target="#myModal" data-toggle="modal">Open Modal</a>
您确实需要使用Ajax并将id作为参数传递
$.get('/URL-to-get-posts', {
bookId: theBookId
}).done(function (data) {
// code to populate your modal
});
这将向指定的URL发送Ajax请求。您还应该使用存储ID的方式替换图书ID。您可以将其放置在单击中,并以这种方式填充模式。我确信当模型打开时,也有一些特定于引导的事件——我不会使用隐藏的输入,但在本例中,可能是模态本身的数据属性
URL可以呈现XML或JSON,您可以使用JS/jQuery来呈现帖子。您还可以在PHP中预呈现HTML,并将其呈现给Ajax调用,这样您的JS代码就更简单了
希望这有帮助。您确实需要使用Ajax并将id作为参数传递
$.get('/URL-to-get-posts', {
bookId: theBookId
}).done(function (data) {
// code to populate your modal
});
这将向指定的URL发送Ajax请求。您还应该使用存储ID的方式替换图书ID。您可以将其放置在单击中,并以这种方式填充模式。我确信当模型打开时,也有一些特定于引导的事件——我不会使用隐藏的输入,但在本例中,可能是模态本身的数据属性
URL可以呈现XML或JSON,您可以使用JS/jQuery来呈现帖子。您还可以在PHP中预呈现HTML,并将其呈现给Ajax调用,这样您的JS代码就更简单了
希望这对您有所帮助。如果您想从PHP获取值,您需要一个ajax请求。使用jQuery,您可以轻松归档:
$.ajax({url: "{path_to_php_file}", success: function(response){
$('#bookId').val(response);
}});
通常,您会得到一个json响应,并可以指定您想要的内容,比如:“response.bookId”。如果您想从PHP获取值,则需要一个ajax请求。使用jQuery,您可以轻松归档:
$.ajax({url: "{path_to_php_file}", success: function(response){
$('#bookId').val(response);
}});
通常,您会得到一个json响应,并可以指定您想要的内容,比如:“response.bookId”。没错,它需要一些AJAX。jQuery使AJAX变得简单-你看过那里的函数了吗?你是对的,它需要一些AJAX。jQuery使AJAX变得简单-您看过那里的函数了吗?我明白您的意思了。我喜欢它,并得到它。但是,我试图简单地在fetchimage.php上回显“$image”,这样它就会显示在模式中,而且似乎不起作用。我必须在链接中使用数据id吗?此代码只是示例
echo'代码>您必须设置正确的文件路径和从数据库获取的正确列名称,上面的代码经过全面测试,因此您可能会错过某些内容或在某个地方出错,将此警报(id)
aftervarid=$(this.attr('id')
并查看当您单击按钮打开modalI时是否收到警报。查看您要去哪里。我喜欢它,并得到它。但是,我试图简单地在fetchimage.php上回显“$image”,这样它就会显示在模式中,而且似乎不起作用。我必须在链接中使用数据id吗?此代码只是示例echo'代码>您必须设置正确的文件路径和从数据库获取的正确列名称,上面的代码经过全面测试,因此您可能会错过某些内容或在某个地方出错,将此警报(id)
aftervarid=$(this.attr('id')
并查看单击按钮打开模式对话框时是否收到警报