在javascript中加入两个html块变量

时间:2013-03-14 13:11:33

标签: javascript html block

我正在尝试使用javascript加入两个html代码块并在之后调用对话框。我已经做了一些研究并尝试了concat和+但这不起作用。这是我的代码的简化版本:

   var html =
      "<div class=\"dialog-form\" title=\"Edit\">" +
   "<form class=\"insertaplato\" method=\"POST\" action=\"edit.php\">" +
    "<fieldset>" +
        "<label>Plate: </label> <input  type=\"text\"  value=\"" + plate + "\" >" +
        "<label>Price: </label><input  type=\"text\"  value=\""+ price +"\" >";     

    "Spicy: <br>    ";
if (spicy==1)
{var varP=
        "<label> Yes </label><input  value= \"yes\" type=\"radio\" checked>"+ 
        "<label> No </label><input  value=\"no\"><br><br>";
} else {
    var varP=
        "<label> Yes </label><input  value=\"yes\" type=\"radio\">"+ 
        "<label> No </label><input value=\"no\" checked type=\"radio\"><br><br>";   
}


 var html2 = "<br>"+ 
    "<br><input id=\"insert\" type=\"submit\" value=\"Edit\" name=\"send\"> " + 
    "</fieldset>"+ 
    "</form>"+ 
    "</div>";

var div = $(html)+$(varP)+$(html2);

      div.dialog(
{
    title:"Edit Plate",
    close: destroy_this_dialog
});

现在,对话框还没有出现。如果我只使用第一个html变量执行此操作就会出现问题,但是当我尝试添加或连接其他html变量时,没有任何反应。我显然不是应该使用这些变量。有任何想法吗?

3 个答案:

答案 0 :(得分:1)

连接字符串而不是jQuery对象

  var div = $(html + varP + html2);

  div.dialog(
  {
    title:"Edit Plate",
    close: destroy_this_dialog
   });

答案 1 :(得分:0)

删除您要将各个部分附加在一起的$。您希望将字符串附加到单个对象中。

 var div = $(html + varP + html2);

答案 2 :(得分:0)

intead of

var div = $(html)+ $(varP)+ $(html2);

  div.dialog(

{     标题:“编辑板块”,     关闭:destroy_this_dialog });

试试这个:

var div = html + varP + html2;

  $('.dialog-form').dialog(

{     标题:“编辑板块”,     关闭:destroy_this_dialog });