2011-09-28 93 views
0

这是我正在尝试做的。使用Jquery添加Html按钮和Onclick?

function showDescription(td) 
{ 
    var desc = $(td).children("input:first").val(); 
    var Button = $('<input type="button" value="Accept" onClick=validateUserInput(' + desc + '); style="float:right;"/>'); 
    var dlg = $("#div"); 
    dlg.append(Button); 
} 

降序处于49.595格式,-126.592 49.620,-126.602 49.642,-126.606

当我检查我看到它在格式的视图源。

<input type="button" style="float: right;" 49.620,-126.602);="" 49.642,-126.606="" onclick="validateUserInput(49.595,-126.592" value="something"> 

如何缩进desc,使其读取为单个字符串。

谢谢。

回答

0

把它传递给函数作为一个字符串包围在单引号您的onclick方法和双引号的值(单总是先双):

var Button = $('<input type="button" 
         value="Accept" 
         onClick=\'validateUserInput("' + desc + '")\'; 
         style="float:right;"/>'); 

如果您想稍后解析它们:

function validateUserInput(string desc) 
{ 
    var descVals = desc.split(','); 

    // descVals[0] = "49.595" 
    // descVals[1] = "-126.592 49.620" 
    // etc. 
} 
0

您需要在onClick属性中加上引号,否则将每组数字视为属性而不是值。您的按钮代码应该是这样的:

var Button = $('<input type="button" value="Accept" onClick="validateUserInput(' + desc + ');" style="float:right;"/>');