js 不能调用函数名权限

js can not call function name right

本文关键字:权限 函数 调用 不能 js      更新时间:2023-09-26

我想创建一个javascript函数,但是当我单击它时,我无法立即调用我的函数名称(show_more_in_month_0/1/2)。

这是我的代码

$i = 0;
foreach ($data as $row){
    echo '<td><span class="glyphicon-plus show_more_in_mont_'.$i.'"></span><span class="glyphicon-minus_'.$i.'"></span></td>';
    echo '<td>'; 
    echo $row[0];
    echo '</td><td>;
    echo $row[1];
    echo '</td><td>';
    echo $row[2];
    echo '</td><tr>'; 
    $i ++;
}

这是我的脚本,我只想在调用正确的函数名称后提醒我的类名

$(document).ready(function() {
    $(".show_more_in_mont_'.$i.'.").click(function(){
        alert(show_more_in_mont_'.$i.');
    });
});

你做错了 - $i我想它是你的PHP变量? 好吧,你不应该在你的JS中有这些。

只需将一个全局类添加为javascript,例如"show-more-container",并使用它来显示您想要显示的任何内容

$( document ).ready(function() {   
    $(".show-more-container").click( function() {
        var elementId = $(this).data('id');
        alert ('show_more_in_mont_'+elementId);
    });       
});

现在你的 html 应该看起来像

<div data-id="<?= $i ?>" class="show-more-container">
</div>

希望这对你有意义:)

编辑:

如果你想走得更远 - 并将其调用为函数,请执行以下操作:

window['my_fn_name_as_string'+appendId]()

为此,该函数应该在全局范围内 - 在 Body 或 Head 上,而不是在 Jquery 中! 如果你想把它添加到jQuery,那么请确保你使用:

$.function() {
    window.my_fn_name_as_string_div = function() { }
}

例: http://jsfiddle.net/7d23y99b/1/