私は、この優れた javascript ライブラリを変更して、html 入力をオートコンプリートする作業を行っています。ここを参照してください。実際には、このライブラリのデフォルトの動作を管理できるように、非破壊的なものを探しています。これは、「追加パラメーターなし」も処理できます。
だから私は次のような電話があると思います
myExtra = {b : 'b', c: 'c'}
// or maybe a thing like myExtra = "{b : 'b', c: 'c'}"
myAutoComplete = new Autocomplete('query', { serviceUrl:'autoComplete.rails'}, myExtra);
myExtra の null テストを使用して、null の場合は何もしないか、myExtra のコンテンツを Ajax リクエストに「追加」するため、この部分は次のようになります。
new Ajax.Request(this.serviceUrl, {
parameters: { query: this.currentValue , },
onComplete: this.processResponse.bind(this),
method: 'get'
});
myExtra が null または空の文字列ではない場合のようになります。
new Ajax.Request(this.serviceUrl, {
parameters: { query: this.currentValue , b: 'b', c: 'c'},
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'
これを理解するための指針があれば、よろしくお願いします。