Javascript输入字段不工作

时间:2015-02-28 05:41:11

标签: javascript php html

我试图填充输入字段,使用javascript,所有脚本都不起作用,我只看到php的回声而不是用于填充输入字段的javascript部分。

这是我的代码

 if($_SERVER['REQUEST_METHOD'] == 'POST') {
$card = $_POST['card'];
echo json_encode(array('card_response' => get_cc_type($card)));
//exit;
}

这是我的剧本,但我不知道为什么它不起作用

<script type="text/javascript">
document.getElementById('button').addEventListener('click', function(){
var card_value = document.getElementById('card').value; // get the input value
var xmlhttp = new XMLHttpRequest(); // create the xmlhttprequest object
var params = 'card=' + card_value; // create the query string
var php_url = document.URL; // this is the URL of the PHP, in this example, i'll just setup it the PHP on the same page.
xmlhttp.open('POST', php_url, true); // set as POST

xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        // handle the response from server here
        var response = xmlhttp.responseText;
        response = JSON.parse(response);
        document.getElementById('cardtype').value = response.card_response; // set the value
    }
}
xmlhttp.send(params); // execute
 });
 </script>

我只在页面中看到这些内容--- {&#34; card_response&#34;:&#34; VIP&#34;}

1 个答案:

答案 0 :(得分:0)

在jquery上首先检查一下警告

alert(xmlhttp.toSource());
alert(response.toSource());

alert(response.card_response);

这些警报会告诉您准确得到的值。例如。 xmlhttp.status是否为200。

另外,检查Firebug,jquery是否出现故障?