我无法使用ajax / javascript设置将数据异步发送到PHP脚本进行处理。我将PHP部分留在这里,因为我无法启动javascript,并且一旦我能够正常工作,我将很乐意自己攻击PHP。
我的下面是我的... the nailthumb& colorbox的东西不是这个场景的一部分,他们做其他事情,我应该注意它们工作正常。它是.ajax-like,它发挥作用,没有任何执行。我尝试添加一个alert()进行故障排除,但它永远不会触发:(意图是当按下onclick()的链接时,会发生魔法!
有人能说出为什么javascript没有解雇吗?
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('.nailthumb-container').nailthumb({width:300,height:140,titleWhen:'load',fitDirection:'center center'});
$('a.btn-screenshot').colorbox({
rel: 'nofollow'
});
$('a.image').colorbox({
rel: 'colorbox-group',
maxWidth: '75%',
scalePhotos: true,
titleScrolling: true
});
$(".ajax-like").submit(function(){
alert("Initial part going...");
var data = {
"action": "like"
};
data = $(this).serialize() + "&" + $.param(data);
$.ajax({
type: "POST",
dataType: "json",
url: "galleryajax.php", //Relative or absolute path to response.php file
data: data,
success: function(data) {
alert("Form submitted successfully.\nReturned json: " + data["json"]);
}
});
return false;
});
});
</script>
这是HTML本身的表格......
<span class="thumb-comment">
<form class="ajax-like" method="post" accept-charset="utf-8">
<input type="hidden" name="mcname" value="'.$row['MCName'].'" placeholder="Favorite restaurant" />
<input type="hidden" name="galleryid" value="'.$row['GalleryID'].'" placeholder="Favorite beverage" />
<a onclick="form.submit();">
<i class="fa fa-heart"></i>
0</a>
</form>
</span>
答案 0 :(得分:2)
$(".ajax-like").submit()
这实际上等待你的提交事件形式.ajax-like。
首先,删除此<a>
代码。
要开始此活动,您需要提交输入等内容。
<input type="submit" />
如果您需要像示例中那样设置输入样式,则可以使用<button type="submit"><i class="fa fa-heart"></i>0</button>
而不是输入。
答案 1 :(得分:0)
在您的表单中添加<input type='submit'>
,而不是&#39; a&#39;标记,以便事件处理程序提交&#39;被执行。您可以使用按钮添加图标:
<form class="ajax-like" method="post" accept-charset="utf-8">
<input type="hidden" name="mcname" value="'.$row['MCName'].'" placeholder="Favorite restaurant" />
<input type="hidden" name="galleryid" value="'.$row['GalleryID'].'" placeholder="Favorite beverage" />
<button type='submit'>
<i class="fa fa-heart"></i>
0
</button>
</form>