2017-04-21 21 views
0

これはシンプルなソートフィドルであり、デバッグするのが難しいエラーです。一方、.appendではなく、アラート(データ)が働いているので、これはajaxの問題ではありません。ここでは、コードは次のとおりです。奇妙な.appendエラー

<!doctype html> 

<html> 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 

<div>Enter a sequence with spaces:</div> 
<form method="post"> 
<input type="text" id="n" name="numbers"> 
<button>Sort</button> 
</form> 
<div>The sorted sequence is: <span id="s"></span></div> 

<script> 
$(document).ready(function(){$("form").submit(function({$.post("/tests/sort.php",$(this).serialize(),function(data){JSON.parse(data);$("#s").append(data);});})}); 
</script> 

</html> 

PHP

<?php 

$s=$_POST["numbers"]; 
$a=explode(" ",$s); 
sort($a); 
echo json_encode($a); 

?> 

で誰がエラーを発見していただけますか?

+0

ブラウザのコンソールにエラーがありますか? – gurvinder372

+0

'$("#s ").html(data)'または '$("#s ")についてはどうですか? –

+0

jsコードに構文エラーがあります –

答えて

1

あなたの質問のコメントに記載されているように、あなたはJSコードに誤りがあります。このようなエラーを避けるには、読みやすくするためにコードを編集する必要があります。

$(document).ready(function() { 
    $("form").submit(function() { 
     $.post("/tests/sort.php", $(this).serialize(), function (data) { 
      JSON.parse(data); 
      $("#s").append(data); 
     }); 
    }) 
}); 
1

あなたは右括弧)とセミコロン;が欠落している:ここでは一例です。 jshint.comを使用して構文をチェックすると、コードをインデントして読みやすいようにする必要があります。

$(document).ready(function(){ 
    $("form").submit(function(){ 
     $.post("/tests/sort.php",$(this).serialize(),function(data){ 
      JSON.parse(data);$("#s").append(data); 
     }); 
    }); 
});