根据变量状态动态添加参数到 ajax 调用
我有一个 ajax 调用,它有一个需要传递给其数据对象的参数列表。但这个列表会根据特定类别而变化。所以我试图找到一种方法来过滤我需要的和我不需要的。
$.ajax({
url:'......',
type:'post',
dataType:'json',
data: {
'api': 'myApilist',
'address' : 'someaddress',
'callTime' : _this.get('calltime'),
'id1' : _this.get('id1'),
'id2' : _this.get('id2'),
'type' : _this.get('type'),
'options': _this.get("options"),
'mode' : _this.get('mode'),
'time' : _this.get('time')
'method' : 'POST'
},
有时,根据我设置的状态,不需要 id1 和 id2 。因此,如果 state="time"
则 id1
和 id2
不需要成为数据列表的一部分。如果 state="id"
则两个 id 都需要在其中。
我试图使用 _underscore
中的过滤器循环来尝试根据我的状态过滤掉这些选项,但它不起作用,因为我没有正确理解它们。我该怎么办呢。
_this.get("options")
指的是 Backbone 模型。
I have an ajax call that has a list of parameters that it needs to pass to its data object. But this list changes based on a certain category. So I'm trying to find a way to filter through the ones I need and the ones I don't need.
$.ajax({
url:'......',
type:'post',
dataType:'json',
data: {
'api': 'myApilist',
'address' : 'someaddress',
'callTime' : _this.get('calltime'),
'id1' : _this.get('id1'),
'id2' : _this.get('id2'),
'type' : _this.get('type'),
'options': _this.get("options"),
'mode' : _this.get('mode'),
'time' : _this.get('time')
'method' : 'POST'
},
Sometimes id1
and id2
are not needed based on a state I have setup. So if the state="time"
then the id1
and id2
don not need to be part of the data list. And if the state="id"
then both ids need to be in there.
I was trying to use the filter loops in _underscore
to try and filter out these options based on my state but it didn't work as I don't understand them correctly. How would I go about this.
_this.get("options")
is referring to a Backbone model.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您必须先构建数据字符串,然后再将其传递到 ajax 调用中。这是你可以做的一种方法:
目前看起来是静态的。现在,根据您的“状态”,您可以使用以下命令动态向 javascript 对象添加属性:
现在使用 JSON 和 json2.js,您可以使用以下方法创建 JSON 字符串:
如果有效,则标记为答案 :)
You have to build your data string before you pass it in the ajax call. This is one way you can do:
Looks static as of now. Now based on your 'state', you can add properties to the javascript object on the fly using the following:
Now using JSON and json2.js, you can create your JSON string using:
Mark as answer if this worked :)