2012-07-19 35 views
0

我有一個包含一個輸入HTML如下網頁視圖:獲取事件點擊組件中的WebView的Android

<input type="file" name="upload" onChange="checkimg(this.value)"/> 

和JavaScript功能與與該組件

function checkimg(fName){ 
    fullName=fName; 
    splitName = fullName.split("."); 
    fileType = splitName[1]; 
    fileType = fileType.toLowerCase(); 
    if (fileType == 'jpg'|| fileType == 'gif' || fileType == 'png' || fileType == 'jpeg') 
    {} 
    else { 
     alert("Choose file with end : jpg, gif, png, jpeg"); 
     } 
} 

現在我想什麼時候能得到事件點擊輸入類型文件。我該怎麼辦?

回答

0

我經過一番閱讀後終於明白了。當你對javascript一無所知時,以及關於這個主題的文檔非常薄弱的​​時候很難。這裏是我的解決方案,希望這能幫助別人:

含2個按鈕,在年底這樣一個HTML頁面:

<div> 
<button type="button" id="ok" 
    style="font-weight: 700; margin-right: 20px;" onclick="validClick();">J'accepte</button> 
<button type="button" id="no" onclick="refuseClick();">Je refuse</button> 
</div> 

我在上面發集團公司的JavaScript的情況下,我HTML頁面:

<script language="javascript"> 
function validClick() { 
    valid.performClick(); 
    document.getElementById("ok").value = "J'accepte"; 
} 
function refuseClick(){ 
    refuse.performClick(); 
    document.getElementById("no").value = "Je refuse"; 
} 
</script> 

有效和拒絕是2個java對象,我通過JavaScript接口使用它們的方法。所以在Java中,我創建了2個按鈕(沒有真正顯示在活動,只有在這裏爲他們的方法和有幾分的HTML按鈕的陰影:

valid = new Button(ctx); 
valid.setOnClickListener(this); 
refuse = new Button(ctx); 
refuse.setOnClickListener(this); 

然後,我添加JavaScript來我的WebView:

// Enablejavascript

WebSettings ws = wv.getSettings(); 
ws.setJavaScriptEnabled(true); 

//添加記錄JavaScript事件接口

wv.addJavascriptInterface(valid, "valid"); 
wv.addJavascriptInterface(refuse, "refuse"); 

最後,處理在onclick方法的單擊事件:

@Override 
public void onClick(View v) { 
    if (v.equals(valid)) { 
     //do Something 
    } else if (v.equals(refuse)) { 
     //do Something else } 
} 

希望這會幫助你。

謝謝

+0

我已閱讀上面的答案,但我不能適用於我的問題..你可以寫清楚我的情況.. – user1060362 2012-07-19 19:06:04

相關問題