Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用jQuery.ajax将javascript作为文本发布_Javascript_Jquery_Asp Classic - Fatal编程技术网

如何使用jQuery.ajax将javascript作为文本发布

如何使用jQuery.ajax将javascript作为文本发布,javascript,jquery,asp-classic,Javascript,Jquery,Asp Classic,我有一个表单,要求用户在文本区输入他们的谷歌分析代码。然后,我将这个字符串传递到ajax post中,并收到一个错误,表示我传递了一个无效的对象。(我不是在这里粘贴整个错误消息,因为它很长。) 正如预期的那样,谷歌分析代码的形式如下: <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'some_number']); _gaq.push(['_trackPag

我有一个表单,要求用户在文本区输入他们的谷歌分析代码。然后,我将这个字符串传递到ajax post中,并收到一个错误,表示我传递了一个无效的对象。(我不是在这里粘贴整个错误消息,因为它很长。)

正如预期的那样,谷歌分析代码的形式如下:

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'some_number']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

我怎样才能在没有错误的情况下发布这篇文章?另外,当用户需要更新它时,我也需要得到它。。同样的问题也会在收到它的时候出现吗?

你的物品不是这样的;它是一个字符串,您正在将字符串作为对象传递。。请尝试以下操作:

data: { skey: 'ga_code', sval: el.val() },
"application/x-www-form-urlencoded; charset=utf-8"
通常,对象被转换为查询字符串,如上所述,但由于您要将字符串传递给转换器,我认为这是行不通的

更新:

看来我有点错了;上述内容不是有效的json,以下内容可以作为对上述内容的更正:

data: { "skey": "ga_code", "sval": el.val() }
键和值必须是双引号,尽管我有点困惑,因为我使用了json,就像我第一次给你的一样,没有任何问题。最后,我建议您测试JSON是否有效

如果这仍然不起作用,那么我建议您将contentType更改为以下内容:

data: { skey: 'ga_code', sval: el.val() },
"application/x-www-form-urlencoded; charset=utf-8"

我一定是做错了什么,因为现在它说:无效的JSON原语:skeyOk,最后,我使用了你的建议,但将数据赋给了一个变量“list”,然后使用:var jsonText=JSON.stringify({list:list});在webmethod中,我的functions参数是一个字典(字符串、对象),然后我可以遍历它…@Emin我已经更新了我的答案,尽管看起来你已经解决了这个问题,因为它现在已经被接受了。