Как перезагрузить страницу после нажатия на любую ссылку - PullRequest
0 голосов
/ 30 октября 2018

Ссылка для утверждения, программирования, отклонения и проверки, все работает отлично, за исключением того, что я хочу, чтобы страница обновлялась при каждом нажатии любой кнопки.

Ниже приведены HTML и JQuery.

$(function(){
		var url = "sites/erp/ajaxify/airtime_order_actions.php";
		$(".order_action").click(function(){
			var id = $(this).attr('data-id');
			var action = $(this).attr('id');
			if(action !=""){
				$.post(url, {id:id,action:action}, function(response){
					var data = JSON.parse(response);
					if(data.code == 1){
						$(".hint").html(data.msg);
						setTimeout(function(){
							location.reload();
						}, 3000)
					}else{
						$(".hint").html(data.msg);
					}
				});
			}
			return false;
		});
	});
<!--{/if}-->
				</td>
				<td class="ord-act">
					<a href="?p=dashboard&a=print_orders&k=<!--{$order->order_id}-->" target="_blank" data-toggle="tooltip" data-placement="top" data-original-title="Print Order">
						<span class="label label-primary"><i class="fa fa-print"></i></span>
					</a>
					<!--{if $order->validated eq 0 && $order->recommended eq 0 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="validate">
							<span class="label label-default">Validate</span>
						</a>
                        
					<!--{elseif $order->validated eq 1 && $order->recommended eq 0 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="recommend">
							<span class="label label-warning">Recommend</span>
						</a>
					<!--{elseif $order->validated eq 1 && $order->recommended eq 1 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="approve">
							<span class="label label-info">Approve</span>
						</a>
					<!--{elseif $order->validated eq 1 && $order->recommended eq 1 && $order->approved eq 1}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="program">
							<span class="label label-success">Program</span>
						</a>
					<!--{/if}-->
					<!--{if $order->approved eq 0}-->
					<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="disapprove">
						<span class="label label-danger">Disapprove</span>
					</a>
					<!--{/if}-->
				</td>
			</tr>
		<!--{/foreach}-->
	</tbody>
</table>
<!--{else}-->
	<div class="well well-sm text-center col-md-5 col-md-offset-3">
		<h4><i class="fa fa-times-circle-o"></i> No Pending Airtime</h4>
		<p>There are no airtime orders available for now.</p>
		<a href="?p=dashboard&a=airtime_orders" class="btn btn-default"><i class="fa fa-refresh"></i> Refresh</a>
	</div>
<!--{/if}-->

Пожалуйста, помогите ... я не очень хорошо, пожалуйста Пожалуйста, помогите ... я не очень хорошо, пожалуйста

Ответы [ 3 ]

0 голосов
/ 30 октября 2018

Используйте window.location.reload() вместо location.reload () для обновления / перезагрузки текущей страницы

0 голосов
/ 30 октября 2018

$(function(){
		var url = "sites/erp/ajaxify/airtime_order_actions.php";
		$(".order_action").click(function(){
			var id = $(this).attr('data-id');
			var action = $(this).attr('id');
			if(action !=""){
				$.post(url, {id:id,action:action}, function(response){
					var data = JSON.parse(response);
					if(data.code == 1){
						$(".hint").html(data.msg);
						setTimeout(function(){
							location.reload();
						}, 3000)
					}else{
						$(".hint").html(data.msg);
					}
				});
			}
			return false;
		});
	});
<!--{/if}-->
				</td>
				<td class="ord-act">
					<a href="?p=dashboard&a=print_orders&k=<!--{$order->order_id}-->" target="_blank" data-toggle="tooltip" data-placement="top" data-original-title="Print Order">
						<span class="label label-primary"><i class="fa fa-print"></i></span>
					</a>
					<!--{if $order->validated eq 0 && $order->recommended eq 0 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="validate">
							<span class="label label-default">Validate</span>
						</a>
                        
					<!--{elseif $order->validated eq 1 && $order->recommended eq 0 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="recommend">
							<span class="label label-warning">Recommend</span>
						</a>
					<!--{elseif $order->validated eq 1 && $order->recommended eq 1 && $order->approved eq 0}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="approve">
							<span class="label label-info">Approve</span>
						</a>
					<!--{elseif $order->validated eq 1 && $order->recommended eq 1 && $order->approved eq 1}-->
						<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="program">
							<span class="label label-success">Program</span>
						</a>
					<!--{/if}-->
					<!--{if $order->approved eq 0}-->
					<a href="#" class="order_action" data-id="<!--{$order->order_id}-->" id="disapprove">
						<span class="label label-danger">Disapprove</span>
					</a>
					<!--{/if}-->
				</td>
			</tr>
		<!--{/foreach}-->
	</tbody>
</table>
<!--{else}-->
	<div class="well well-sm text-center col-md-5 col-md-offset-3">
		<h4><i class="fa fa-times-circle-o"></i> No Pending Airtime</h4>
		<p>There are no airtime orders available for now.</p>
		<a href="?p=dashboard&a=airtime_orders" class="btn btn-default"><i class="fa fa-refresh"></i> Refresh</a>
	</div>
<!--{/if}-->
0 голосов
/ 30 октября 2018

Добавьте атрибут Onclick для всех ссылок и установите для него значение location.reload(); ИЛИ добавьте прослушиватель событий и прослушайте click, а затем установите его для выполнения location.reload();.

Или вы можете добавить location.reload(); в конец кода, который обрабатывает щелчок.

Примечание: location.reload(); - это JavaScript.

РЕДАКТИРОВАТЬ: Благодаря комментарию я заметил, что на самом деле присутствует функция location.reload(). Но это будет выполнено через 3000 мс. Пожалуйста, убедитесь, что прошло 3000 мс. Если ничего не происходит, проверьте консоль на наличие сообщения об ошибке.

...