HTML表格onclick不会在Android中触发

时间:2014-05-26 04:40:45

标签: javascript android html html-table

我试图让一个html表在android中正常工作,并为某些行和单元格提供onclick事件。

它应该从2轮获得用户输入,然后将它们加起来然后在每轮之后继续累加直到第7轮。这是我的代码到目前为止,一切都在PC上正常运行但是当我通过我的平板电脑版本4.2.2进行时,我得不到输入的结果。

示例代码:

Javascript / HTML代码:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<script language="JavaScript" type="text/javascript">
    /*<![CDATA[*/
    function calcP1()
    {
        var p1ro1 = document.getElementById("p1r1").value;
        var p1ro2 = document.getElementById("p1r2").value;

        var pl1 = document.getElementById("p1").value;

        var sum1 = (parseInt(p1ro1) + parseInt(p1ro2));

        document.getElementById("sp1r2").value = sum1;
    }
    /*]]>*/
</script>
</head>
<body>
<table>
    <tr>
        <td>Player Names:</td>
        <td><input type="text" id="p1"/></td>
    </tr>
    <tr>
        <td>Round 1: 2 Books</td>
        <td><input type="text" id="p1r1"/></td>
    </tr>
    <tr>
        <td>Round 2: 1 Book 1 Run</td>
        <td><input type="text" id="p1r2"onclick="calcP1();"/></td>
    </tr>
    <tr>
        <td>Total Round 1 & 2 </td>
        <td bgcolor="#00FF00"><input type="text" id="sp1r2" readonly /></td>
    </tr>
</table>
</body>
</html>

TableActivity:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.table);

    wv = (WebView)findViewById(R.id.tables);
    wv.loadUrl("file:///android_asset/ScoreCard.html");
}

我必须在我的TableActivity中使用addJavascriptInterface吗?谢谢。

1 个答案:

答案 0 :(得分:0)

尝试在获取对webview的引用之后但在加载URL之前将这些行添加到您的活动中

wv.setWebChromeClient(new WebChromeClient());
wv.getSettings().setJavaScriptEnabled(true);

添加javascript接口将允许您从javascript调用应用程序中的java方法,反之亦然