如果使用.load()加载内容,则在模式onSubmit中加载内容

时间:2013-10-09 13:58:23

标签: javascript jquery twitter-bootstrap joomla joomla2.5

我们目前正在Twitter Bootstrap模式框中将内容加载到iframe。但是,样式不会被执行,因为我们使用Joomla的仅内容后缀加载内容:?tmpl=component

<?php echo '…
$("a[data-toggle=\'"+$modalText+"\']").on(\'click\', function (e) {
    // Call the modal manually
    var url = $(this).attr(\'href\');
    $modal.find(".modal-body-content").html(\'<iframe frameborder="0" width="100%" height="700" allowtransparency="true" src="\' + url + \'"></iframe >\');
    $modal.modal("show");
});
…';?>

这样做的原因是内容包含一个表格&amp;提交按钮。如果我们通过jQuery的.load()函数加载内容,有没有办法将内容保留在模态中并在模态内提交?

感谢您的任何建议。

2 个答案:

答案 0 :(得分:1)

如果你想“在模态内提交”,你应该阻止默认表单提交(这将触发整页加载),并发送一个ajax请求。

您可以手动执行此操作,或使用jQuery表单插件(您可以找到它here)并致电.ajaxForm()

//to be called once, when the form is present in the DOM
$('#myForm').ajaxForm({
    success: function(data){
       //code to execute when submit successfully returned from server
       //the "data" variable contains whatever the answer is : html, json ...
    }
    //you define here any option of the "$.ajax()" function
});

答案 1 :(得分:0)

您还可以编辑模板目录中的component.php以包含CSS文件。这样你就可以避免在jQuery中编写任何代码;)