2014-11-22 45 views
0

我想更新iOS中javascript函數複選框的選定值。 這是複選框的HTML代碼:在iOS中的func中選擇更新複選框

<input type='checkbox' name='displayraw' value='yes' selected='true' > 

我想改變selected= "false" or "true"時複選框被選中或取消選中。

這裏是我的代碼:我使用webview運行提交功能,但不能成功。我可以更改文本框的值,但不能更改複選框的選定值。請幫幫我。提前致謝。

NSString* temp = [self.webView stringByEvaluatingJavaScriptFromString: 
         [NSString stringWithFormat: 
         @"document.getElementsByName('%@')[0].selected='%@'",elementName, value]]; 

回答

0

複選框中的HTML是checkedselected

所以,如果你只是更改您的代碼是這樣的:
(注意如何我已經改變了「選擇」,在這兩個例子中,以「查」):

示例HTML:

<input type='checkbox' name='displayraw' value='yes' checked='checked' /> 

實施例的Objective-C:

NSString* temp = [self.webView stringByEvaluatingJavaScriptFromString: 
         [NSString stringWithFormat: 
         @"document.getElementsByName('%@')[0].checked='%@'",elementName, value]]; 


因此,如果您確保在Objective-C的JavaScript字符串被評價是這樣的:

// use this 
document.getElementsByName('displayraw')[0].checked = true; 

那麼就應該檢查你的複選框。



UPDATE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~

要取消一個 '檢查' 複選框使用:

document.getElementsByName('displayraw')[0].checked = false; 

要檢查未選中複選框,使用:

document.getElementsByName('displayraw')[0].checked = true; 



SEE THIS JAVASCRIPT IN ACTION VIA JSFIDDLE HERE

希望這有助於!

+0

感謝您的快速回復,但我的HTML是由其他人定義的。這是完全HTML 有「檢查」但它是文字。當複選框未選中時,「已選中」文本被刪除。有什麼方法可以更新嗎?謝謝 – NTNT 2014-11-22 11:56:22

+0

看到我的更新和更新的小提琴。在你的情況下,你想設置「檢查」狀態使用'true'的'false'選項顯示更新。希望這可以幫助! – radiovisual 2014-11-22 12:29:24

+0

非常感謝。它的工作 – NTNT 2014-11-22 12:43:44