2009-06-15 103 views
0
<script language="javascript" type="text/javascript"> 
var a =10; 
function test() 
{ 
if (a ==10) { 
    document.sample.checkbox1.checked = true ; 
    } 

} 

</script> 

<form name="sample"> 

<input type="checkbox" name="checkBox1" test();>Option 

</form> 

創建表單元素在創建窗體本身的自動調用基於它的功能應該決定其是否需要檢查或不..調用功能,而在JavaScript

這裏的問題。如何調用該函數,不需要任何點擊(上單擊事件)

感謝, Chells

回答

2

你可以在bodyonLoad處理器運行test()功能:

<body onLoad="test();"> 

這將調用函數一次頁面的內容已經被加載。

你也可以只調用<script>標籤功能的輸入後:

<form name="sample"> 
    <input type="checkbox" name="checkBox1">Option  
</form> 

<script language="JavaScript" type="text/javascript"> 
    test(); 
</script> 

爲頁面加載這將被調用。

+2

``設置`window.onload`,即它*將*等待外部資源加載!如果你不想等待,你需要一個DOMContentLoaded監聽器(或者在瀏覽器中使用適當的黑客,它本身不支持這個事件) – Christoph 2009-06-15 09:04:38

0

像你想它調用body標籤的onload事件聽起來給我。但也許你可以解釋更多關於爲什麼你想先調用這個函數?

+0

我只是想使basesd對變量的複選框。我會在頁面上移動,然後如果回來複選框。它應該根據它應該決定的變量自動調用函數。是否需要檢查或不需要。 ? – joe 2009-06-15 09:03:57

0

正如Perspx說的那樣,拋出一個事件來處理body的onload,但是看看一個事件庫(like mine),因爲它們比內聯事件有更好的支持和靈活性。

1

總有美好的舊document.writeln(),即使它是由DOM操作。在大多數情況下,使用了成功:

<script type="text/javascript"> 
document.writeln('<input type="checkbox" name="checkBox1"' + 
    (a == 10 ? ' checked' : '') + '>'); 
</script> 
<noscript> 
<!-- unchecked by default --> 
<input type="checkbox" name="checkBox1"> 
</noscript>