1

jQuery Colorbox ライブラリを使用しています。アンカー タグのhref属性値を設定できません。値の設定を手伝ってもらえますか? アラートで値を出力すると、正しい href 属性値が出力されます。私のコードは次のとおりです。

<a class="edit_user_transaction_status c-btn" updatehref="{$control_url}{$query_path}?op=edit_user_transaction&page={$page}&txn_no={$user_transaction_details.transaction_no}&transaction_data_assign={$user_transaction_details.transaction_data_assign}&user_id={$user_id}{if $user_name!=''}&user_name={$user_name}{/if}{if $user_email_id!=''}&user_email_id={$user_email_id}{/if}{if $user_group!=''}&user_group={$user_group}&{/if}{if $user_sub_group!=''}&user_sub_group={$user_sub_group}{/if}{if $from_date!=''}&from_date={$from_date}{/if}{if $to_date!=''}&to_date={$to_date}{/if}{if $transaction_status!=''}&transaction_status={$transaction_status}{/if}{if $transaction_no!=''}&transaction_no={$transaction_no}{/if}" href="#updatePopContent">Update</a>

<div class="hidden">
  <div id="updatePopContent" class="c-popup">
    <h2 class="c-popup-header">Transaction</h2>
    <div class="c-content">         
      <h3>Are you sure to change status?</h3>
      <a href="#"class="c-btn">No</a><a href="" class="c-btn edit_transaction_status" id="update_url">Yes</a> 
    </div>
  </div>
</div>

<script language="javascript" type="text/javascript">
$(document).ready(function(){   

 $(".edit_user_transaction_status").click(function(e) { 
  //$.colorbox.close(); 
    var update_url = $(this).attr('updatehref');
    $('#update_url').attr('href', update_url);
    $(".edit_user_transaction_status").colorbox({inline:true, width:666});   

    $(".c-btn").bind('click', function(){
      $.colorbox.close();
    });
  });

  });
  </script>

href 属性 (つまり update_url) の値を、id update_urlを持つアンカー タグに設定できません。これで私を助けてもらえますか?前もって感謝します。

4

1 に答える 1

0

作ったものではなくデータ属性を設定してみてください(動作するはずですが、データを使用する方が良いです。また、何かが動的に更新されたときにfirebugなどが常に変化するとは限らないことを知っておいてください.console.log( $('.edit_user_transaction_status').attr('href')) で最終値を確認します。

<a class="edit_user_transaction_status c-btn" data-updateHref="{$control_url}... href="#updatePopContent">Update</a>

$(".edit_user_transaction_status").click(function(e) { 
//$.colorbox.close(); 
var update_url = $(this).data('updateHref');
$('#update_url').attr('href', update_url);
$(".edit_user_transaction_status").colorbox({inline:true, width:666});   

$(".c-btn").bind('click', function(){
  $.colorbox.close();
});

});

于 2013-09-23T16:32:49.743 に答える