2016-11-10 7 views
-5

誰でもこの簡単な機能の何が問題なのか理解してもらえますか?".replace"に何が間違っていますか?

function generateSKU(inputField) { 
    return inputField.replace(" ","."); 
} 

TypeError:未定義のメソッドreplaceを呼び出すことはできません。

は私も同じエラー.. はまたinputField.toString.replace()..も私にまったく同じエラーを与えるが生成 inputField.Value.replaceを()..

どんなに試してみました私がしていることは、私はこれに任意の文字列関数を適用することはできません。私のスクリプトには他に何もありません。この機能のみ。私の最初のスクリプトです。

また、私がinputFieldだけを返すと、それは正常に戻り値を置き換えます。

私はそのような

=generateSKU(A1) 

のように、細胞内でそれを呼び出すことで機能を使用しています。

誰かが助けることができれば、私は非常に義務づけられます。

+1

あなたは 'generateSKU()'に文字列値を渡していることは確かですか?いいえ、あなたはそれを守る必要があります。 – peteb

+0

関連する関数をどのように呼び出すのですか? –

+0

@Rubén私は、細胞の中でそれを呼んでいるという質問に書いています。 –

答えて

3

関数はパラメータなしで呼び出されています(または、undefinedまたはnullと解決されたものが渡されています)。おそらく空の細胞ですか?

function generateSKU(inputField) { 
    if (inputField) { 
     return inputField.replace(" ","."); 
    } 
} 
+0

私は式を書く場所の代わりに書くことで関数を呼び出しています。 –

+0

あなたが参照してください、問題は私が単に入力フィールドを '返す'の場合、ターゲットフィールドはメインフィールドから「テキスト」を取得します。私がtypeof(inputField)をタイプすると、私は 'string'を取得しますが、私がreplaceを呼び出すとすぐには動作しません。 –

+0

問題は、読み込まれたページにありました。私は質問を投稿したときにエラーを出していましたが、スクリプトに触れずに翌朝に正常に機能しました。助けてくれてありがとう。 –

関連する問題