我有一个javascript函数...
function check_val(name, cat)
{
alert(cat);
var val = name.indexOf('[');
if (val == -1){
//$('input[type="checkbox"][value='+ name + ']')[0].click()
val = '"' + name + '"'
type = "'" + cat + "'"
$.get(url,{'ajaxtype':'content', type : val}, function(data{$('#search_container').html(data);$('#rotator').hide();});
}
}
当我用参数说check_val('xyz','pqr')
问题是当我检查我正在获取的request.get参数时
<QueryDict: {u'type': [u'"xyz"'], u'ajaxtype': [u'content']}>
而不是
<QueryDict: {u'pqr': [u'"xyz"'], u'ajaxtype': [u'content']}>
答案 0 :(得分:1)
预先构建对象并使用数组下标语法:
var requestData = { 'ajaxtype': 'content' };
requestData[type] = val;
$.get(url, requestData,
function(data{$('#search_container').html(data);$('#rotator').hide();});
答案 1 :(得分:0)
而不是{'ajaxtype':'content', type : val}
尝试{'ajaxtype':'content', "'" + cat + "'" : val}
。
这样JS应该知道它不是键名而是变量。