如何使用数组中的下拉菜单更新usermeta字段?

时间:2019-01-12 18:24:08

标签: php arrays wordpress dropdown

我正在寻找使用按钮更新usermeta字段的帮助。或什至最好没有按钮,只需在下拉菜单中进行选择即可。我将所有用户及其领域列出在一个数组中

$users = get_users( $args );
echo '<div class="user-list">';
echo '<table><tr><th>User ID</th><th>User Name</th><th>User Email</th> 
<th>Refund Status</th><th>Update Status</th></tr>';
foreach ( $users as $user ) {
echo '<tr><th>' . esc_html( $user->ID ) . '</th><th>' . esc_html( 
$user->display_name ) . '</th><th>' . esc_html( $user->user_email ) . 
'</th><th>' . '<select><option disabled>' . esc_html( $user- 
>refund_status ) . '</option><option value="Return Received">Return 
Received</option><option value="Refund Approved">Refund 
Approved</option><option value="Refund Sent">Refund Sent</option> 
</select>' . '</th><th><button class="button" 
onClick="updateStatus();"><span class="icon">Update Status</span> 
</button></th></tr>';
}
echo '</table></div>';

如何根据下拉菜单中的选择获取更新退款状态的按钮?我遇到的问题是我不知道如何将变量和用户ID传递给Javascript,以便每个用户更新状态。我已经读了很多书,但是找不到我想要的东西,也许我说的搜索错误。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以在通过useridrefund status的下拉菜单中调用onchange函数

function FunctionName(id, status) {

            var data = {
                'id': id,
                'status':status
            };
            //=========ajax==========//
            jQuery.ajax({
                type: 'POST',
                url: "update.php",
                data: data,
                beforeSend: function () {
                },
                success: function (data) {
                    alert(data);
                },
                error: function (e) {
                }
            });
            //=========End of ajax====//

}

像这样的东西。在update.php中,您可以运行查询。