2012-03-12 19 views
0

UIWebviewでHTML文字列を使用してWebページを表示しています。私は下のテキストエリアコードからタイプされた値を取得したい。iPhone:stringByEvaluatingJavaScriptFromStringが間違った出力を返します

result = [result stringByAppendingFormat:@"<textarea name=\"qId_"]; 
    NSString *questionid = [question valueForKey:@"QuestionId"]; 
    NSString *questionidSTR = (NSString *) [NSString stringWithFormat:@"%@", questionid]; 
    result = [result stringByAppendingFormat:questionidSTR]; 
    [questionidArray addObject:questionidSTR]; 
    result = [result stringByAppendingFormat:@"\" rows=\"5\" style=\"width:90%\"></textarea>"]; 

私は

NSString *value = [NSString stringWithFormat:@"%@%@%@",@"document.getElementById('",[questionidArray objectAtIndex:i],@"').value"]; 

    NSString* out = [enterSurveyWebview stringByEvaluatingJavaScriptFromString:value]; 

を試してみました。しかし、そのは正しい出力を与えていない、私は値を取得するとき、私は間違ってやっていると思います。

部分を取得するために私を訂正してもらえますか?

ありがとうございます。

答えて

2

あなた<textarea>は(%@QuestionIdある)qId_%@の名前を持っていますが、あなたのjavascriptは%@を求めています。 getElementById()の代わりにgetElementByName()を使用する必要があります。

NSString *value = [NSString stringWithFormat:@"document.getElementsByName('qId_%@')[0].value", [questionidArray objectAtIndex:i]]; 
+0

私はそれを修正しようとした、結果= [NSStringのstringWithFormat: "QID @%_%@%@" @ "のdocument.getElementById( '"、[questionidArray objectAtIndex:i]が、 "@')@。値"];それは価値を得ることはありません。 – Getsy

+1

@Getsy:私はあなたが 'getElementByName(たいと思いますが)' –

+0

申し訳ありませんが、 'getElementsByName()'ことを確認してください。 –

関連する問題