我有一个表单和一个jQuery函数,如果用户更改了html选择字段,则会触发该函数。该函数收集所需的所有信息,并使用ajax帖子发布到php脚本。 我想用新功能扩展此功能:如果所选值等于预定义值,我想显示带有两个按钮的对话框。用户需要单击其中一个按钮,如果他这样做,新信息将附加到帖子。 一个简单的例子: 选择有3个选项: - 柠檬 - 香蕉 - Apple
如果用户选择柠檬或香蕉,脚本会将信息发送到服务器而无需进一步操作。但如果他选择苹果,我需要额外的对话,因为我想询问他是否需要红色或绿色。它需要附加到我想要发送到服务器的信息上。
你能帮帮我们,我该怎么做?
我只有第一部分:
$('select.myList').change( function()
{
var e = $(this)
var val = $(this).val();
var id = $(this).attr('data-id')
var url = 'index.php?process'
$.ajax({
type: "POST",
url: url,
data: { id: id, val: val },
success: function(data){
var o = $.parseJSON(data);
if( o.error )
{
console.log('error:' + o.message);
} else
{
console.log('success:' + o.message);
}
return false;
}
})
return false
})
答案 0 :(得分:0)
首先,我会说你应该非常小心你的变量名。如果可以避免,你绝不应该使用e
作为变量。我还会更改id
和val
。
在任何情况下,您都应该能够使用ajax:http://api.jquery.com/jquery.ajax/中的beforeSend
属性,因此假设'apple'将是元素的val
:
$.ajax({
type: "POST",
url: url,
data: { id: id, val: val },
beforeSend: function() {
if (val === 'Apple') {
//do stuff
}
},
// rest of ajax call
}