li标签上的onclick事件

时间:2013-08-12 12:27:13

标签: php javascript html

我试图根据他们的类别显示一些项目。这是我的代码。

$cat=array("all","coding","registry","analytics");
    list($a,$b,$c,,$d)=$cat;
    $members .='<ul>';
    $members .='<li onclick="case_studies_get_some($a)">All</li>';
    $members .='<li onclick="case_studies_get_some($b)")">Coding</li>';
    $members .='<li onclick="case_studies_get_some($c)">Registry</li>';
    $members .='<li onclick="case_studies_get_some($d)">Analytics</li>';
    $members .='</ul>';



return $members;

    $output .= '<ul class="team-members-list">';
    foreach( $members as $member ) {
        $output .= case_studies_display_one( $member );
    }
    $output .= '</ul>';
    return $output;
}   

通过点击特定标签,它应该调用以下功能

function case_studies_get_some(&$cat){
    global $wpdb;
    $table_name = $wpdb->prefix . "case_studies";

        $query = $wpdb->prepare("SELECT * FROM $table_name where category = %s ORDER BY name",
                                     $cat);
        $rows = $wpdb->get_results( $query, ARRAY_A );

    $results = array();
    foreach ( $rows as $row ) {
        $row['image'] = $row['imageloc'];
        $row['website'] = $row['url'];
        unset( $row['imageloc'] );
        array_push( $results, $row );
    }

    return $results;
}

但它不起作用。我认为onclick事件不起作用.. 有任何建议请..

2 个答案:

答案 0 :(得分:4)

这是错误

//This is php function
function case_studies_get_some(&$cat)
{

}

记住onclick事件只接受javascript函数。你正在使用上面的php函数。

答案 1 :(得分:0)

在PHP中,'单引号字符串'中的变量不会被它们的值替换(这只发生在“双引号字符串”中)。您还需要在JavaScript中引用该值。所以你需要使用:

$members .= '<li onclick="case_studies_get_some(\'' . $a . '\')">All</li>';

这将产生如下输出:

<li onclick="case_studies_get_some('all')">All</li>

可能存在其他问题,但这是与onclick事件最直接相关的问题。