如何将字符串传递给bootstrap模式?

时间:2013-11-18 20:24:18

标签: javascript jquery twitter-bootstrap modal-dialog smarty

我不确定我做错了什么,但我已经搜索了所有“将数据传递给bootstrap模态”帖子,但仍然无法找到答案。

我有一个用户表。在每行中都有一个“删除用户按钮”。当您点击“删除”时,会显示一个模式,其中包含图例:“您确定要删除吗?”

我希望用户名显示在该图例中,因此我将用户名发送到JS文件但不显示。什么都没有出现。

这是每行中的删除按钮:

   <td><a href="#" onclick="callToModal({$frontuser->username});return false;" class="btn mini red-stripe" role="button" >Delete</a></td>


我使用smarty,这就是为什么参数看起来像这样:{$frontuser->username}

在该代码之上,我有模态的定义:

 <!-- modal -->
 <div id="myModal3" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel3" aria-hidden="true">
       <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
             <h3 id="myModalLabel3"></h3>
       </div>
       <div class="modal-body">
              <p></p>                              
       </div>
       <div class="modal-footer">
             <button class="btn" data-dismiss="modal" aria-hidden="true">Cerrar</button>
             <button data-dismiss="modal" class="btn blue" id="deleteok">Confirmar</button>
       </div>
</div>
<!-- end modal -->

然后我的JS文件是:

function callToModal(data) {
  $("#myModal3 .modal-header h3").html("Eliminar");
  $("#myModal3 .modal-body p").html("Are you sure you want to delete: ", data);
  $("#myModal3").modal("show");
}


任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:3)

最后在搜索了smarty和js sintax之后,我发现了问题所在。

简单来说,它需要一些''包装参数。

因此,从SMARTY向JS发送参数的正确方法是:

<td><a href="#" onclick="callToModal('{$frontuser->username}');" class="btn mini red-stripe" role="button" >Eliminar</a></td>

答案 1 :(得分:1)

为什么你的.html()调用中有逗号?简单的错字可能?

$("#myModal3 .modal-body p").html("Are you sure you want to delete: ", data);

看起来“data”是来自删除行中函数调用的名称?只需将逗号更改为+即可将字符串添加到字符串中,如果这是您要执行的操作。

$("#myModal3 .modal-body p").html("Are you sure you want to delete: "+ data);