为什么在后续场景中没有设置href属性?

时间:2013-09-23 13:55:34

标签: javascript php jquery html smarty

我正在使用jQuery Colorbox库。我无法设置锚标记的 href 属性值。你能帮我设定价值吗?如果我在alert中打印该值,则打印正确的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 的锚标记。你能帮帮我吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

尝试设置一个数据属性而不是一个数据属性(应该可以工作,但更好地使用数据。另外,知道当找到动态更新的东西时,firebug等并不总是会改变。你可以随时控制.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();
});

});