我在控制器中定义了以下内容:
$data['is_amazon'] = $product->is_amazon;
$data['is_ebay'] = $product->is_ebay;
在控制器的正下方,我正在调用.js文件(jQuery)。
$this->template->add_js('js/is_ebay_amazon_prouct_edit.js');
我想在我的jQuery脚本中访问这些php变量,我尝试过这种方法:
var amazon = '<?php echo $is_amazon; ?>';
var ebay = '<?php echo $is_ebay; ?>';
jQuery(document).ready(function($) {
alert(amazon);
//alert(ebay);
});
虽然这只是在警报中显示我的物理文本,但是:
<?php echo $is_ebay; ?>
在我的jQuery中可以访问这些变量的最佳方法是什么?
试试这个
做一件事......你需要在视图中创建两个输入隐藏字段。像这样
<input type='hidden' id="amazon" value="<?php echo $is_amazon; ?>" />
<input type='hidden' id="ebay" value="<?php echo $is_ebay; ?>" />
并在您的查询中调用该值
$(document).ready(function() {
//alert($('#amazon').val()+" "+$('#ebay').val());
console.log("amazon"+$('#amazon').val());
console.log("ebay"+$('#ebay').val());
});
现在它适用于你..试试吧。
没有选项直接将php变量分配给javascript。要做到这一点,你需要指定它分配给html元素,如,
<input type="hidden" id ="amazon" value="<?php echo $is_amazon; ?>">
我们可以使用此代码从此html元素中获取jquery中的值,
var amazon = $('#amazon').val();
出于安全原因,php变量无法分配给javascript变量。
试试这个
<input type="hidden" id="fromAmazon" value="<?php echo $is_amazon ?>"/>
<input type="hidden" id="fromEbay" value="<?php echo $is_ebay ?>"/>
在jquery中加载jquery.js文件后
jQuery(document).ready(function($) {
var amazon = $("#fromAmazon").val();
var ebay = $("#fromEbay").val();
console.log("amazon",amazon);
console.log("ebay",ebay);
});