[英]How to submit Form by Bootstrap Modal using Ajax
我会尽量简明扼要,我是Bootstrap和高级javascript的新手,基本上我已经使用Bootstrap模态在用户面前加载表格以收集数据并将其保存在数据库中。 我的问题是,您将如何使用ajax做到这一点,因为我还有其他模式也将具有不同的形式,并且我不想一次又一次地处理整个页面。 PS我正在codeigniter这个应用程序
这是模态内的形式
<section id="launch" class="modal hide fade" style="width: 800px; left: 500px;">
<header class="modal-header" style="height: 7px; background: none repeat scroll 0% 0% rgb(87, 164, 210);">
<h4 style="margin-bottom: 0px; margin-top: -5px; text-align: center; color: white;">Unit Details</h4>
<button type="button" class="close" data-dismiss="modal" style="margin-top: -20px;">×</button>
</header>
<?php echo form_open('setupnewblock/registerNewBlock'); ?>
<div class="modal-body" style="padding-top: 0px; padding-left: 0px; " >
<div style="position: relative; left: 43px; margin-top: 41px; margin-left: 0px;">
<span>Address 1</span>
<input type="text" placeHolder="" name="address1" style="width: 219px; height: 17px; margin-left: 20px; margin-top: 3px;" value="<?php echo set_value('address1'); ?>"/>
<br />
<span>Address 2</span>
<input type="text" placeHolder="" name="address2" style="width: 219px; height: 17px; margin-left:20px; margin-top: 3px;" value="<?php echo set_value('address2'); ?>"/>
<br />
<span>Address 3</span>
<input type="text" placeHolder="" name="address3" style="width: 219px; height: 17px; margin-left:20px; margin-top: 3px;" value="<?php echo set_value('address3'); ?>"/>
<br />
<br />
</div>
<footer class="modal-footer" style="margin-top: 475px;">
<input type="submit" value="Save" name="save" class="btn btn-primary" style="margin-top: 2px; height: 27px; width: 89px;" data-dismiss="modal"></input>
<?php echo form_close(); ?>
</footer>
</section>
我想使用ajax提交此表格
我有同样的问题,但是当我尝试这个要点时,一切都做得很好。
您可以尝试以下代码:
$(document).ready( function() {
$('.modal form').on('submit', function(event) {
event.preventDefault()
$.post( $(this).attr('action'), $(this).serialize(), function(data) {
// just try to see the outputs
console.log(data)
if(data.return===true) {
// Success code here
} else {
// Error code here
}
}, 'json')
})
});
如果您想做的很简单,这应该适合您:
$('input[name=save]').click(function(e) {
e.preventDefault();
$.post("setupnewblock/registerNewBlock", {form: $("#launch form").serialize()},
function(data) {
// callback
});
});
看看codeigniter 用户指南 :
所以你的代码应该是
$attributes = array('class' => 'myform', 'id' => 'myform');
echo form_open('setupnewblock/registerNewBlock', $attributes);
然后,您必须将表单的Submit函数绑定到jquery函数,例如
$(document).ready(function() {
$("#myform").submit(function() {
$.ajax(
{
type: 'POST',
url: 'your url to php file',
data: {}, //your form datas to post
success: function(response)
{
alert(response);
},
error: function()
{
alert("Failure");
}
});
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.