我有一个Bootstrap 2.32的模态框,我正在尝试将它动态插入到另一个视图的HTML中。我使用Codeigniter 2.1开发。根据Dynamically inserting a bootstrap modal partial view into a view,我的代码如下:
<div id="modal_target"></div>
将目标div作为插入点。在我的视图中有一个按钮,看起来像这样:
<a href="#message" class="btn btn-large btn-info" data-action="Message" data-toggle="tab">Message</a>
我的JS代码有:
$.ajax({
type : 'POST',
url : "AjaxUpdate/get_modal",
cache : false,
success : function(data){
if(data){
$('#modal_target').html(data);
//This shows the modal
$('#form-content').modal();
}
}
});
主视图的按钮是:
<div id="thanks"><p><a data-toggle="modal" href="#form-content" class="btn btn-primary btn-large">Modal powers, activate!</a></p></div>
这是我想要单独存储为部分视图的内容:
<div id="form-content" class="modal hide fade in" style="display: none;">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Send me a message</h3>
</div>
<div class="modal-body">
<form class="contact" name="contact">
<fieldset>
<!-- Form Name -->
<legend>modalForm</legend>
<!-- Text input-->
<div class="control-group">
<label class="control-label" for="user">User</label>
<div class="controls">
<input id="user" name="user" type="text" placeholder="User" class="input-xlarge" required="">
<p class="help-block">help</p>
</div>
</div>
<!-- Text input-->
<div class="control-group">
<label class="control-label" for="old">Old password</label>
<div class="controls">
<input id="old" name="old" type="text" placeholder="placeholder" class="input-xlarge">
<p class="help-block">help</p>
</div>
</div>
<!-- Text input-->
<div class="control-group">
<label class="control-label" for="new">New password</label>
<div class="controls">
<input id="new" name="new" type="text" placeholder="placeholder" class="input-xlarge">
<p class="help-block">help</p>
</div>
</div>
<!-- Text input-->
<div class="control-group">
<label class="control-label" for="repeat">Repeat new password</label>
<div class="controls">
<input id="repeat" name="repeat" type="text" placeholder="placeholder" class="input-xlarge">
<p class="help-block">help</p>
</div>
</div>
</fieldset>
</form>
</div>
<div class="modal-footer">
<input class="btn btn-success" type="submit" value="Send!" id="submit">
<a href="#" class="btn" data-dismiss="modal">Nah.</a>
</div>
</div>
当我点击按钮时,模态框能够正确地插入,但我收到了以下错误:
TypeError: $(...).modal is not a function
我该如何修复这个问题?
jQuery(...).modal
。您的 jQuery 可能处于兼容模式,还要检查是否重复引入了 jQuery。 - mwebberjQuery('#form-content').modal();
。 - vp_arth.modal()
而不是model()
。这是一个如此愚蠢的错误。让我筋疲力尽。 :( - guitarlass