我有一个调用Web方法的javascript函数。我尝试将常规字符串发送到web方法并且它有效。在var empid = $('#'+ txtId).val()我得到正确的文本框值。在ajax上发送empid的正确方法是什么?我尝试了一些事情,他们不工作。任何帮助,将不胜感激。谢谢
.js
function toggle(txtId, lblname, txtcode) {
var empid = $('#' + txtId ).val();
$.ajax({
type: "POST",
url: "SearchEmpId.asmx/GetEmployeeName",
data: '{ id: empid }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$('#' + lblname).html(data.d);
}
});
}
.asmx.vb(webmethod)
Public Function GetEmployeeName(ByVal id As String) As String
Return "It works"
End Function
这是删除contentType时的屏幕截图
答案 0 :(得分:2)
答案 1 :(得分:0)
对json数据使用dataType:“json”
$.ajax({
url: 'ajax.php', //This is the current doc
type: "POST",
dataType:'json', // add json datatype to get json
data: ({name: 145}),
success: function(data){
console.log(data);
}
});
阅读文档http://api.jquery.com/jQuery.ajax/
同样在PHP中
<?php
$userAnswer = $_POST['name'];
$sql="SELECT * FROM <tablname> where color='".$userAnswer."'" ;
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
// for first row only and suppose table having data
echo json_encode($row); // pass array in json_encode
?>
答案 2 :(得分:0)
您可以使用以下内容:
var empid=$('#txtEmpId').val();
将数据传递给
data: { id: empid },
在这里查看小提琴:http://jsfiddle.net/gN6CT/103/