2

特定の IP に情報を送信するために、このコードを試しました。その IP は、サーバーとして機能するマイクロコントローラーです。

ただし、その IP ではなく、その IP で名前が付けられたページに情報を送信します。

コードは JavaScript で記述されています。どうすればいいですか?post メソッドまたは Xmlhttprequest を使用し、その方法を説明します。私のコードは非常に単純だと思います:

<!DOCTYPE html>
<html>
<head>
<script>
function validateForm()
{
var x=document.forms["myForm"]["fname"].value;
if (x==null || x=="")
  {
  alert("First name must be filled out");
  return false;
  }
}
</script>
</head>

<body>
<form name="myForm" action="192.168.1.250" onsubmit="return validateForm()" method="post">
First name: <input type="text" name="fname">
<input type="submit" value="Submit">
</form>
</body>

</html>
4

2 に答える 2

1

プロトコルを含める必要があります

action="http://192.168.1.250"
于 2013-03-09T12:29:39.420 に答える
0

ユーザーをその IP にも送信したい場合は、POST を使用します。実際に同じページにとどまりたい場合は、情報を送信してください。その逆の場合は、実際には AJAX 呼び出しで十分です。以下では、JavaScript ライブラリの代わりにバニラ JavaScript を使用しますが、jQuery を使用すると、コードをより安定させるためのコールバック/ヘルパーが提供されます。

jsFiddle: http://jsfiddle.net/atjBQ/3/

<script>
    /** 
     * Validate Form, else, Send Ajax
    **/
    function validateform() {
       var x = document.forms["myForm"]["fname"].value;
        if ( x == null || x == "" ) { 
            alert( "First Name must be filled out" );  
            return false;
        }

        /** 
         * If POST
         *   use: xmlhttp.setRequestHeader(
         *           "Content-type", 
         *           "application/x-www-form-urlencoded"
         *           );
        **/
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open("GET", "http://192.168.1.250?q=" + x, true);
        xmlhttp.send();
        return false;
    }
</script>

<form name="myForm" id="myformtosend">
    <label for="fname">First name:</label><input type="text" name="fname" />
    <input type="submit" value="Submit" />
</form>

jQuery の場合:

/** 
 * Snippet Reference to: 
 * http://api.jquery.com/jQuery.post/   
**/

<script>
   $.ajax({
     type: "POST",
     url: "http://192.168.1.250",
     data: data,
     success: function() {
        /** Some Code **/
     }   
   });
</script>
于 2013-03-09T13:38:59.643 に答える