[英]Click button run function and addClass
我試圖在單擊按鈕時將類添加到引導程序模式。 除了只有一個模式填充了JSON內容外,別無所求。 為了使腳本正常工作,我需要在模態頂部添加一些標識符,以便腳本知道哪個模態是打開的。
模態如下所示:
<div data-show="false" data-width="800" tabindex="-1" aria-hidden="false" role="dialog" class="modal fade in" id="shop-modal">
<div class="modal-dialog modal-lg">
... content from JSON ...
</div>
</div>
模態是這樣打開的:
<a data-vid="123456" data-handle="link-to-product.html" class="trigger-cart" href=""></a>
$('.trigger-cart').click(function(e){
e.preventDefault();
var $this = $(this);
var url = $this.data('handle') + '/?format=json';
var vid = $this.data('vid');
quick_shop(url, vid);
});
單擊按鈕時觸發的功能是:
function quick_shop(url, vid){
$('#shop-modal').addClass(vid);
$.getJSON(url, function (data){
$('#shop-modal').modal('show');
// do stuff....
我試圖做的是將vid
作為類添加到打開的模式中。 正如我嘗試的$('#shop-modal').addClass(vid);
我也嘗試過這樣的事情:
$('#shop-modal').modal('show').addClass(vid);
這行不通。 有誰知道這是怎么做到的嗎?
根據您的評論:
好的,但是vid是123456。為什么addClass(vid)不能正常工作? 不過這行得通,addClass(''+ vid +'')
聽起來您要將數字傳遞給addClass,但是addClass需要一個字符串。 這就是為什么addClass(''+123456+'')
有效但addClass(123456)
addClass(''+123456+'')
原因,在數字類型的任一側使用空字符串會強制其成為字符串。
相反,如果您做了addClass((vid).toString())
那么它也將起作用。 雖然,我也不得不提到僅使用數字作為類名是無效的 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.