HTML - 将表单数据作为序列化的json发送

时间:2014-09-16 17:52:37

标签: c# php html json forms

我目前正在研究一个系统,该系统需要能够使用一个表单将消费者重定向到c#应用程序,该表单将数据作为序列化的JSON字符串与消费者一起发布。

因此,表单看起来像这样,基本上是: -

<form action="c#methodLocation" method="post">
   <input type="text" value="<?php echo $safeFormatJson; ?>">
   <input type="submit" value="submit">
</form>

我认为需要一个enctype,但是我尝试了“application / json”,但数据被解释为UrlEncoded。文本/纯文本是否可行,或者甚至可以严格地将序列化字符串作为POST发送?

我尝试使用Jquery和AJAX以不同的方式发送数据,但是当消费者到达c#端时,该方法会产生重写数据的问题,因为这样做会无意中创建新会话。 / p>

1 个答案:

答案 0 :(得分:0)

我所知道的唯一解决方案是捕获onsubmit事件然后发送你喜欢的任何手工制作的请求

这里是类似jQuery的伪代码(它可以是prototype.js,angular.js或纯JS8)

(
 var form = $("#myform"); //find needed element in DOM
 var mySecretEncription = function(){.../*hard to understand secret*/}; //define your specials
 var myPost = function(){ //provide functionality to send valid request
     var myData = {};
     myData.superField  = mySecretEncription(form.select("input.myfield").value);
     $.http({
        url : "special-post-url or form.action attribute",
        method:"POST",
        headers:{... my special header ...},
        data :myData
     })
 }
 form.on("submit", mypost); //event subscription

)()

这不是要复制的代码,而是接受