使用多维 PHP 数组中的特定键作为 Javascript 变量 Jquery onClick
Use Specific Key from Multidimensional PHP Array As Javascript Variable Jquery onClick
我有一个多维 PHP 数组,其中每个内部数组的键是按钮的 ID,我将单击并实例化一个 jQuery 函数。
我基本上想根据单击的 Id 从 PHP 数组动态创建一个 javascript VAR 数组。这是数组:
$ContentGroupIds = array(
43 => array( 511, 531, 567 ),
54 => array( 483, 499, 509 )
);
所以你可以看到我有 ContentGroupId's: 43 and 54
,每个指向 ContentId's
的数组。
当我点击 ContentGroupId = 43
的按钮时,我需要将 jquery 变量动态设置为如下所示:
var contentids = ['511','531','567'];
然后我可以在 jquery 函数的其余部分中使用那个 var
。
您可以使用 php json_encode[=10 将 php 数组转换为 javascript json =]
将 ContentGroupID 设置为按钮上的一个属性(使用 HTML 输出会有所帮助),然后使用 jQuery.
获取该属性
PHP/HTML:
<?php
$ContentGroupIds = array(
43 => array( 511, 531, 567 ),
54 => array( 483, 499, 509 )
);
foreach( $ContentGroupIds as $item => $ids ){
// Convert ID Array to string
$attr = implode( ',', $ids );
// Output: <a href="#" class="btn" attr-ids="511,531,567">Button #43</a>
echo '<a href="#" class="btn" attr-ids="'. $attr .'">Button #'. $item .'</a>';
}
?>
jQuery:
$('body').on('click', '.btn', function(){
var str = $(this).attr('attr-ids'), // str = "511,531,567"
arr = str.split(','); // arr = ['511','531','567']
console.log(arr); // (3) [0:"511", 1:"531", 2:"567"]
});
功能代码段:
$('body').on('click', '.btn', function(){
var str = $(this).attr('attr-ids'),
arr = str.split(',');
alert(arr);
});
/*CSS only to make the links more buttony*/a{display:inline-block;background:#0095ff;padding: 6px 18px;color:#fff;text-decoration:none;border:1px solid #07c;box-shadow:inset 0 1px 0 #66bfff;font-family:sans-serif;font-size:14px border-radius:3px;}a:hover{background: #0085ee;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" class="btn" attr-ids="511,531,569">Button #43</a>
<a href="#" class="btn" attr-ids="483,499,509">Button #54</a>
我有一个多维 PHP 数组,其中每个内部数组的键是按钮的 ID,我将单击并实例化一个 jQuery 函数。
我基本上想根据单击的 Id 从 PHP 数组动态创建一个 javascript VAR 数组。这是数组:
$ContentGroupIds = array(
43 => array( 511, 531, 567 ),
54 => array( 483, 499, 509 )
);
所以你可以看到我有 ContentGroupId's: 43 and 54
,每个指向 ContentId's
的数组。
当我点击 ContentGroupId = 43
的按钮时,我需要将 jquery 变量动态设置为如下所示:
var contentids = ['511','531','567'];
然后我可以在 jquery 函数的其余部分中使用那个 var
。
您可以使用 php json_encode[=10 将 php 数组转换为 javascript json =]
将 ContentGroupID 设置为按钮上的一个属性(使用 HTML 输出会有所帮助),然后使用 jQuery.
获取该属性PHP/HTML:
<?php
$ContentGroupIds = array(
43 => array( 511, 531, 567 ),
54 => array( 483, 499, 509 )
);
foreach( $ContentGroupIds as $item => $ids ){
// Convert ID Array to string
$attr = implode( ',', $ids );
// Output: <a href="#" class="btn" attr-ids="511,531,567">Button #43</a>
echo '<a href="#" class="btn" attr-ids="'. $attr .'">Button #'. $item .'</a>';
}
?>
jQuery:
$('body').on('click', '.btn', function(){
var str = $(this).attr('attr-ids'), // str = "511,531,567"
arr = str.split(','); // arr = ['511','531','567']
console.log(arr); // (3) [0:"511", 1:"531", 2:"567"]
});
功能代码段:
$('body').on('click', '.btn', function(){
var str = $(this).attr('attr-ids'),
arr = str.split(',');
alert(arr);
});
/*CSS only to make the links more buttony*/a{display:inline-block;background:#0095ff;padding: 6px 18px;color:#fff;text-decoration:none;border:1px solid #07c;box-shadow:inset 0 1px 0 #66bfff;font-family:sans-serif;font-size:14px border-radius:3px;}a:hover{background: #0085ee;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" class="btn" attr-ids="511,531,569">Button #43</a>
<a href="#" class="btn" attr-ids="483,499,509">Button #54</a>