使用React Native Webview加载Html

时间:2018-04-09 08:49:21

标签: react-native jsx

所以我一直在尝试在React Native的Webview中加载一个HTML页面,但是无法做到这一点,看不出我弄错了什么。

Webview显示表单,但不断加载(我正在使用onLoadStart和onLoadEnd监视加载Webview的时间),当我单击表单中的按钮时没有任何反应,我只是得到一个错误在控制台中说。 http load failed error code -999

以下是我一直在尝试加载的HTML:

<!DOCTYPE html>
<html lang="en" style="position: relative; float: left; width: 100%; height: 100%;">
    <head>
        <meta charset="utf-8"/>
        <meta name="viewport" content="width=device-width, initial-scale=1"/>
        <style type="text/css">
            .button{
                border: none;
                display: inline-block;
                background-color:#603a7e;
                color: #ffffff;
                padding: 15px 20px;
                border-radius: 6px;
                font-weight: 900;
            }
            .button:focus{
                background-color:#724695;
                color: #ffffff;
            }
        </style>
    </head>
    <body style="position: relative; float: left; width: 100%; height: 100%; display: flex; align-items: center; padding: 0px 0px; margin: 0px 0px;">
        <form action="http://payment-url.com" method="POST" style="text-align: center; position: relative; float: left; width: 100%; height: initial;">
            <input type="hidden" name="names" value="John Doe" />
            <input type="hidden" name="amount" value="100000" />
            <input type="hidden" name="email_address" value="mail@jd.co" />
            <input type="hidden" name="phone_number" value="080XXXXXXXX" />
            <input type="hidden" name="currency" value="NGN" />
            <input type="hidden" name="merch_txnref" value="XXXXXXXXX" />
            <input type="hidden" name="merchantid" value="XXXXXXX" />
            <button type="submit" class="button">Make Payment Now</button>
        </form>
    </body>
</html>

这是我的Webview实现:

<WebView source={{html: this.state.source}} style={[Styles.misc.spanned]}
    javaScriptEnabled={true} initialScale={100}
    onLoadStart={this._loadStart.bind(this)} onLoadEnd={this._loadEnd.bind(this)}/>

知道我可能在这里做错了吗?似乎无法弄明白,提前谢谢。

注意:我正在为iOS和Android开发,但在iOS工作时进行测试。

0 个答案:

没有答案