我将javascript变量作为值传递给html表单上的输入隐藏类型时遇到问题。
更多细节 :
public function exportToPdf1($headerText=""){
// serialize the grid object into the session
$_SESSION[$this->viewPaneId."-pdf"] = serialize($this);
$pfdExport .= ' // create the export to pdf button
$("#'.$this->getViewPaneId().'").prepend("<div id=\"pdfExport\" style=\"float:right; border: none; cursor:pointer;\"><img src=\"images/stock_save_pdf.png\"> </div>");';
$pfdExport.=' // onClick function
var printToPdf = false;
var selectedRowId;
$("#pdfExport").click(function(){
selectedRowId = $("#'.$this->getViewPaneId().'input[name=\'rowSelectionRadio\']:checked").val();
if(selectedRowId){
if(confirm("Are you sure to print this object ?")){
printToPdf = true;
}
}else{
printToPdf = false;
alert("Please select an element from the table first.");
}
// create a temporarly form, in order to POST the data
$("<form id=\"pdf-form\" method=\"post\" action=\"index.php?c=gridToPdf\"><input type=\"hidden\" name=\"gridObjId\" value=\"'.$this->viewPaneId.'\"></form>").appendTo("#rightcolumn");
$("<input type=\"hidden\" name=\"headerText\" value=\"'.$headerText.'\">").appendTo("#pdf-form");
$("<input type=\"hidden\" name=\"act\" value=\"exportObject\">").appendTo("#pdf-form");
$("<input type=\"hidden\" name=\"rId\" value=\"'.selectedRowId.'\" >").appendTo("#pdf-form");
// submit the form and remove it
$("#pdf-form").submit().remove();
}
});';
总是rId作为值字符串“ selectedRowId”获得,而不是selectedRowId变量的值。
有谁知道如何处理这个问题?
最佳答案
好吧,selectedRowId
似乎没有定义,并且selectedRowId
也不是php中的有效变量,这就是为什么输入字段具有值selectedRowId
的原因,因为php认为它是字符串而不是变量。
/ edit-> okey,我看到selectedRowId
是一个JavaScript变量,而不是php变量。因此,您将需要使用“ +”来代替,而不是“。”。和
关于javascript - 在输入html表单上从javascript传递参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27876608/