AJAX单选按钮使用jQuery
问题描述:
我需要帮助才能提交的RSVP与这样的单选按钮:AJAX单选按钮使用jQuery
Attending: <input type="radio" />
Maybe Attending: <input type="radio" />
Not Attending: <input type="radio" />
每当有人回复活动的情况下,它应该比输入到所选择的(所以只是一个单选按钮只能选择),所以当选择一个选项时,它应该使用$.ajax
函数执行AJAX请求。
我这样做:
Attending: <input type="radio" onclick="rsvpEvent(3, 1);" />
Maybe Attending: <input type="radio" onclick="rsvpEvent(2, 1);" />
Not Attending: <input type="radio" onclick="rsvpEvent(1, 1);" />
使用jQuery:
function rsvpEvent(rsvp, id)
{
$.ajax({
type: "GET",
url: "http://localhost:8888/update/test.php",
data: "rsvp=" + rsvp + "id=" + id,
success: function()
{
alert('rsvp: ' + rsvp + ' id: ' + id);
},
error: function()
{
alert('rsvp: ' + rsvp + ' id: ' + id);
}
});
}
这并不在所有的工作......这是什么问题?
答
有几件事情我会改变
- 我想使它成为一个实际的形式,而不是仅仅单选按钮,从而使他人不启用Javascript仍然可以参加你们的精彩派对。
- 使单选按钮都具有相同
name='whatever'
,这样如果你使用,你可以使用serialize()
从jQuery的形式来与您的数据(目前你会发送修正这个错误,你只能选择在同一时间 - 一个rsvp = 3id = 1,我怀疑你的函数期望)。
答
首先,我认为它应该是一个post事件,而不是一个get,并且当方法后面的代码需要两个参数时,您发送的数据是单个字符串。
function GetDate() {
$.ajax({
type: "POST",
url: "default.aspx/GetDate",
data: "{myParam:'" + document.getElementById("txtParam").value + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
$.each(msg, function(i, item) {
$("#dialog").fadeOut("fast", function() {
$("#dialog").html(item);
$("#dialog").fadeIn(300);
});
});
}
});
}
+0
我知道我的样本是对于.NET,但剩下的就是相关 – griegs 2010-09-21 23:25:52
答
您的具体问题是URL的值,它应该是唯一的:
url: "update/test.php",
Ajax请求的第三方网站通常是不可能的,因为安全限制,所以你不能使用HTTP :// on url value。
在数据别忘& ID之前
+ “&id=” + id
',从而使他人不启用Javascript仍然可以参加你们的精彩parties.' - 有史以来最好的报价;) – MacMac 2010-09-22 00:11:32