2012-03-12 93 views
0

我在UIWebview中顯示使用html字符串的網頁。我想從下面的文本區域代碼中檢索鍵入的值。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>qId_%@名(其中%@QuestionId),但是JavaScript是隻要求%@。您還需要使用getElementByName()而不是getElementById()

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

我試圖糾正它,結果= [NSString的stringWithFormat:@ 「%@ QID _%@%@」,@ 「的document.getElementById('」,[questionidArray objectAtIndex:I]中,@「')。值「];但它沒有獲得價值。 – Getsy 2012-03-12 20:54:46

+1

@Getsy:我想你想'getElementByName()' – 2012-03-12 21:15:58

+0

對不起,使'getElementsByName()'。 – 2012-03-12 21:25:43