Как я могу обновить поле usermeta, используя раскрывающийся список в массиве? - PullRequest
0 голосов
/ 12 января 2019

Я ищу помощь в обновлении поля 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>';

Как я могу получить кнопку для обновления статуса возврата в зависимости от выбора, сделанного в раскрывающемся списке? Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как передать переменную и идентификатор пользователя каждому пользователю Javascript для обновления статуса. Я много читал, но не могу найти то, что ищу, может быть, я неправильно формулирую свои поиски. Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 12 января 2019

Вы можете вызвать функцию onchange при выпадающем меню, передавая userid и refund status

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 вы можете выполнить свой запрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...