我正在尝试使用jquery-ajax发布表单,同时在彩色框弹出窗口中加载隐藏的div。
要加载的隐藏div称为“#hidden-div”。
到目前为止,我有以下代码:
有关如何使其发布所有值然后使用隐藏的div触发颜色框弹出的任何想法?
以下代码不会发布数据而不会触发弹出:(
<script>
$(document).ready(function() {
$("#frmSS4").submit(function(event,dontCheck) {
if(dontCheck === true) return;
$.ajax({
type : 'POST',
url : "http://clientes.cupon0km.com/form.php?form=4",
data : $(this).serialize(),
dataType : 'jsonp'
});
event.preventDefault();
$("#hidden-div").colorbox({inline:true, width:"auto", fixed:true});
});
});
</script>
答案 0 :(得分:1)
脚本有点模糊,但如果我说得对,你应该尝试这样的事情:
<script>
$(document).ready(function() {
$("#frmSS4").submit(function(event,dontCheck) {
if(dontCheck === true) return;
$.ajax({
type: 'POST',
url: "http://clientes.cupon0km.com/form.php?form=4",
data: $(this).serialize(),
success: function(data) {
$("#dinero-form").trigger("submit",true); // What is this?
$.colorbox({html: $('#hidden-div').html()});
}
});
event.preventDefault();
});
});
</script>
答案 1 :(得分:1)
用以下代码替换你的ajax语句:
$.ajax({
type : 'POST',
url : "http://clientes.cupon0km.com/form.php?form=4",
data : $(this).serialize(),
dataType : 'jsonp',
success: function( data ) {
$.colorbox({inline:true, width:"auto", fixed:true, href:"#hidden-div"});
}
});
答案 2 :(得分:0)
要发送表单数据,您可以使用.serialize()
序列化表单中的所有数据,而不是一次只输入一次:
data: { email: $('#email').val(), CustomFields_17_4: $('#CustomFields_17_4').val(), CustomFields_12_4: $('#CustomFields_12_4').val(), CustomFields_13_4: $('#CustomFields_13_4').val(), CustomFields_16_4: $('#CustomFields_16_4').val() },
可以改为:
data: $(this).serialize(),
使用this
引用表单(因为此代码位于表单的事件处理程序中)。
要打开一个colorbox实例,您只需要在success
回调函数中调用初始化代码。
.serialize()
的文档:http://api.jquery.com/serialize
<script>
$(document).ready(function() {
$("#frmSS4").submit(function(event,dontCheck) {
if(dontCheck === true) return;
$.ajax({
type : 'POST',
url : "http://clientes.cupon0km.com/form.php?form=4",
data : $(this).serialize(),
dataType : 'jsonp'//this line will allow you to do cross-domain AJAX requests (I believe this is one of your problems)
});
event.preventDefault();
//initialize colorbox here, Antonio Languna has an example in his answer
});
});
</script>
答案 3 :(得分:0)
用户html而不是href as bellow
$(#divid).colorbox({inline:true,width:“auto”, 固定:真,HTML:数据});