2016-05-05 12 views
2

ユーザーがデータを入力した後にdivを更新する必要がありますが、できません。 divが表示されますが、表示されなくなります。PHPとJsonは、入力にデータを入力した後にdivを更新します。 Not work

マイコード:

function.js

window.onload = function(){ 
var mydata = document.getElementsByTagName("input"); 
if(mydata != null){ 
    for(var i=0; i< mydata.length; i++) { 
     if(mydata[i].type == "text"){ 
      if(mydata[i].id == "qtd") { 
       mydata[i].onchange = function() { 
        send(this); 
       }; 
      } 
     } 
    } 
} 
} 

function send(box){ 
if (box == null) { return; } 
var nameBox = box.name; 
var url="process.php?nameBox="+nameBox+"&value="+encodeURIComponent(box.value); 
requisicaoHTTP("GET",url,true); 
} 

function dataNew(){ 
var info = ajax.responseText; 
if(info != null){ 
    var out= document.getElementById("myDIV"); 
    out.innerHTML = info; 
} 
} 

HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
    <script type="text/javascript" src="Ajax.js"></script> 
    <script type="text/javascript" src="functions.js"></script> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
</head> 

<body> 
    <form action="javascript:void%200"> 
    <input type="text" name="test" id="test" value=""> 
    </form> 
    <div id="myDIV"></div> 
</body> 
</html> 

私は入力にデータを入力した後のdivが表示され、更新したいと思います。

+0

ここで、dataNew関数を呼び出していますか? Ajax.js関数応答(){ \t場合(== 200 ajax.status)(ajax.readyStateの== 4){ \t \tなら{ \t \t \t dataNew()内部 –

+0

。 \t \t} else { \t \t \t alert( "not work XMLHttpRequest。"); \t \t} \t} } –

答えて

0

jQueryの.html関数を使用できます。

http://api.jquery.com/html/

$('#txt_box').keyup(function(event){ 
     // Get the typed text 
    var txt = $(this).val(); 

    // Insert the text to the div 
    $("#myDIV").html(txt); 
}); 

Fiddle Example

(あなたのコードにはjQueryを追加することを忘れないでください)


UPDATE

だからあなたのコードをあなたの完全な機能は、次のようなものでなければなりません:

HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> 
    <script type="text/javascript" src="functions.js"></script> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
</head> 

<body> 
    <form id="txt_form" action=""> 
    <input type="text" name="test" id="test" value=""> 
    <input type="submit" value="Submit" id="txt_send"> 
    </form> 
    <div id="myDIV"></div> 
</body> 
</html> 

Functions.js

$("#txt_send").click(function(event){ 
    event.preventDefault(); 
    var field_name = $("#test").attr("name"); 
    var field_val = $("#test").val(); 

    // POST to update the text. 
     $.ajax({ 
     type: "POST", 
     url: "process.php?nameBox="+field_name+"&value="+encodeURIComponent(field_val), 
     dataType: "html" 
     }).done(function(data) { 
     // Display the text on the div. 
     $("#myDIV").html(field_val); 
     } 
     }); 
    }); 
}); 

Full Code Fiddle Example 私はそこに理由はもちろん、アヤックスからフィドルにはPHPをコメントしていません。

+0

と私のPHPコード? –

+0

私は私の例を更新したので、それはあなたのために働くはずです...助けて欲しいです – eljamz

+0

ありがとう!!!!!!!!!!!!!!!!!!!! –

関連する問題