如何在单击href链接时向同一url添加查询字符串参数

jslywgbw  于 2021-06-15  发布在  Mysql
关注(0)|答案(3)|浏览(373)
//script to show magnific popup
<script>
		$('.gallery-lb').each(function() { // the containers for all your galleries
			$(this).magnificPopup({
		        delegate: 'a', // the selector for gallery item
		        type: 'image',
		        gallery: {
		        	enabled:true
		        },
		        mainClass: 'mfp-fade'
		    });
		});

</script>

//script to show popup
(function ($) {
[ Show modal1 ]*/
    $('.js-show-modal1').on('click',function(e){
        e.preventDefault();
        $('.js-modal1').addClass('show-modal1'); 
    });

    $('.js-hide-modal1').on('click',function(){
        $('.js-modal1').removeClass('show-modal1');
    });
})(jQuery);
<?php
//Quick View link at index.php page 
if(count($product) > 0)
{
   foreach ($product as $products){
   echo'
<a href="?qid='.$products['Product_ID'].'" class="block2-btn flex-c-m stext-103 cl2 size-102 bg0 bor2 hov-btn1 p-lr-15 trans-04 js-show-modal1">Quick View                                                             </a>
';}?>

<!-- Display product details on magnific modal popup -->
	<div class="wrap-modal1 js-modal1 p-t-60 p-b-20">
		<div class="overlay-modal1 js-hide-modal1"></div>

		<div class="container">
    <div class="row">
    <div class="slick3 gallery-lb">                                                                       
       <?php                                                               
       //check if query string exist in URL                                                                           
       if(isset($_GET['qid']) && !empty($_GET['qid'])){
       //get selected product details from database and display at magnific modal popup

       $selectedproduct =$app->getProductDetails($_GET['qid']);

       if(count($selectedproduct) > 0){
       foreach ($selectedproduct as $productdetail){
       echo '
       <div class="item-slick3" data-thumb="'.$productdetail['Product_Image'].'">
       <div class="wrap-pic-w pos-relative">
       <img src="'.$productdetail['Product_Image'].'" alt="IMG-PRODUCT">
       <a class="flex-c-m size-108 how-pos1 bor0 fs-16 cl10 bg0 hov-btn3 trans-04" href="'.$productdetail['Product_Image'].'">                                                                           <i class="fa fa-expand"></i></a>
       </div>
       </div>

       <div class="item-slick3" data-thumb="'.$productdetail['Product_Detail_Image01'].'">
       <div class="wrap-pic-w pos-relative">
       <img src="'.$productdetail['Product_Detail_Image01'].'" alt="IMG-PRODUCT">
       <a class="flex-c-m size-108 how-pos1 bor0 fs-16 cl10 bg0 hov-btn3 trans-04" href="'.$productdetail['Product_Detail_Image01'].'"><i class="fa fa-expand"></i></a>
       </div>
       </div>

       <div class="item-slick3" data-thumb="'.$productdetail['Product_Detail_Image02'].'">
       <div class="wrap-pic-w pos-relative">
       <img src="'.$productdetail['Product_Detail_Image02'].'" alt="IMG-PRODUCT">
       <a class="flex-c-m size-108 how-pos1 bor0 fs-16 cl10 bg0 hov-btn3 trans-04" href="'.$productdetail['Product_Detail_Image02'].'">
       <i class="fa fa-expand"></i></a>
       </div>
       </div>';
       }
       }
       }?>
       </div>
       </div>
       </div>
       </div>

我想创建一个电子商务网站,当用户点击某个特定产品的“快速查看”链接时,它会在lightbox弹出窗口中显示产品的详细信息。但是,我无法这样做,因为在执行onclick操作时,附加在产品“快速查看”链接上的查询字符串没有显示在索引url上。因此,lightbox在单击产品链接后显示空结果。
产品快速查看url如下所示:http://localhost/index.php?qid=(某些产品id)。
我使用放大弹出源代码来显示灯箱。
预期结果:单击产品快速查看链接时,将弹出一个灯箱,在索引url页面中显示所选产品的产品详细信息。
当单击a href链接时,如何向索引url添加查询字符串,以便根据查询字符串qid(也称为产品id)从数据库中获取适当的产品详细信息,并在lightbox中显示。希望有人能帮我。:)

nfeuvbwi

nfeuvbwi1#

像这样的

<a onclick="window.location='http://localhost/index.php'+window.location.search;">Quick View</a>

也许 吧?

7z5jn7bk

7z5jn7bk2#

我们不需要太多的代码,如果你只是想添加一些东西的网址。你可以用 .pushState javascript上的函数。

history.pushState({}, "page title", "?qid=some_product_id or anything");

请在此处查找详细信息:https://developer.mozilla.org/en-us/docs/web/api/history_api#adding_and_modifying_history_entries
这也将预示着历史。

y4ekin9u

y4ekin9u3#

您可以使用以下代码并向查询字符串添加参数
window.history.replacestate(null,null,“?param1=value”);

相关问题