我有一个“创建标签”的表格。使用下面的jQuery代码。

$("#createtag").submit(function() { //same as above, but for form submit instead of button click
   var newtag     = $('#newtag').attr('value');
   var type_id     = $('#type_id').attr('value');
   var company_id     = $('#company_id').attr('value');
         $('#createtag').load("../contacts/action_createtag.php?newtag="+ newtag + "&type_id=" + type_id + "&company_id=" + company_id).append('#createtags');
   return false;
  });


但是我刚刚意识到,如果'newtag'变量包含一个空格,那就是它将结束的地方。通过萤火虫观察它,如果没有空间,则参数显示如下:

company_id 5495
newtag test
type_id 2


但是,当输入空格时,它看起来像这样:

newtag test


有人知道为什么会这样吗?为什么没有将适当的变量传递给加载的页面?

提前致谢!

瑞安

最佳答案

在值上使用encodeURIComponent()

$('#createtag').load("../contacts/action_createtag.php?newtag="+
  encodeURIComponent(newtag) + "&type_id=" + encodeURIComponent(type_id) +
  "&company_id=" + encodeURIComponent(company_id)).append('#createtags');

09-25 19:49