私はAjax呼び出しにいくつかの余分なパラメータを渡す必要があるので、この優れたjavascriptライブラリを自動入力用のHTML入力see hereに変更しています。実際に私は非破壊的な何かを探していますので、このライブラリのデフォルトの動作を管理することができ、 "余分なパラメータなし"も処理できます。Javascript、中かっこと定義を追加する
ので、私はこの部分ように私は、AjaxリクエストにmyExtraの内容を「追加」nullの場合、または何もしないmyExtraの場合はnullのテストと
myExtra = {b : 'b', c: 'c'}
// or maybe a thing like myExtra = "{b : 'b', c: 'c'}"
myAutoComplete = new Autocomplete('query', { serviceUrl:'autoComplete.rails'}, myExtra);
のようなコールを持っているだろうと思い:
私はとnew Ajax.Request(this.serviceUrl, {
parameters: { query: this.currentValue , b: 'b', c: 'c'},
onComplete: this.processResponse.bind(this),
method: 'get'
});
:myExtraがnullまたは空の文字列でないときのようなものになる
new Ajax.Request(this.serviceUrl, {
parameters: { query: this.currentValue , },
onComplete: this.processResponse.bind(this),
method: 'get'
});
私の問題は、別のものに中括弧付きのコンテンツ{}を追加する方法がわからないことです(これらの{}が何であるかわかりません...)
私はPythonが受け入れるもののこの王をしたいと思うが、私はちょうどJavascriptがそれを行うことができますかわからない、
>>> class A:
def __init__(self, data):
self.data = data
>>> a = A("my data")
>>> dir(a)
['__doc__', '__init__', '__module__', 'data']
>>> myExtra = "b='b';c='c'"
>>> for x in myExtra.split(";"):
var, value = x.split('=')
setattr(a, var, value)
>>> dir(a)
['__doc__', '__init__', '__module__', 'b', 'c', 'data']
>>> print a.data, a.b, a.c
my data 'b' 'c'
ので、あなたがこれを理解するための任意のポインタを持っている場合は、事前にありがとうございください。
中括弧は、** [Object Literals](http://www.dyn-web.com/tutorials/obj_lit.php)を使用して 'Object'を定義します** – Matt