我有以下设置: JQuery的:
$('.btn-setting').click(function(e){
e.preventDefault();
$('#myModal').modal('show');
});
这会打开一个HTML文件作为对话框,问题是我无法将任何PHP变量传递到页面上以供参考:
<a href="<?= echo $UserID; ?>" class="btn btn-info btn-setting">Click for dialog</a>
有人建议让我这样做的方法吗?
好的。问题是现在,我正在查看页面的来源..然而,它显示了我所期待的,现在当我点击按钮调出对话框时,它显示的是不同的数据......
不推荐我知道,但是现场直播:
92.236.219.136/Admin /
用户:堆叠
通过:堆栈
答案 0 :(得分:2)
这是最强大的方式,特别是如果你想要传递的不仅仅是一个字符串:
<?php
// Call this function to pass an object to the JS code
function php_vars_to_js($id, $obj) {
echo "<script id='$id' type='text/php_data'>";
echo htmlspecialchars( json_encode( obj ) );
echo '</script>';
}
// for examlpe
php_vars_to_js( "php_vars", array("a_string" => "foo", "a_num" => 12 ) );
然后以这种方式阅读:
var php_vars = $.jsonDecode( $("php_vars").text() );
答案 1 :(得分:1)
您可以像这样在jQuery中获取传递的href
:
$('.btn-setting').click(function(e){
e.preventDefault();
var passedValue = $(this).attr('href');
// passedValue contains your <?=$UserID?> from the link
// ...
$('#myModal').modal('show');
});
答案 2 :(得分:0)
<a href="<?php echo $UserID; ?>" class="btn btn-info btn-setting">Click for dialog</a>
你回应了回声
答案 3 :(得分:0)
您可以使用data属性,如下所示:
<a href="<?php echo $UserID; ?>" data-variable1="<?php echo $UserID; ?>" class="btn btn-info btn-setting">Click for dialog</a>
在你的JS中:
$('.btn-setting').click(function(e){
e.preventDefault();
var1 = $(this).attr("data-variable1"); // Here is your PHP Variable now.. you can handle it to your Modal etc..
$('#myModal').modal('show');
});