我试图使用jQuery AJAX将JSON发送到PHP文件,基本上我要做的是获取一堆子元素的值和id然后将它们分配给JSON对象,然后通过ajax将该对象发送到PHP文件,然后处理它并将其输入数据库.
这是我的代码,
使用Javascript/jQuery的:
function test(){
var selects = $('#systems_wrapper').find('.dropDowns');
var newArray = new Array();
selects.each(function(){
var id = $(this).attr('id');
var val = $(this).val();
var o = { 'id': id, 'value': val };
newArray.push(o);
});
$.ajax({
type: "POST",
url: "qwer.php",
dataType: 'json',
data: { json: newArray }
});
}
Run Code Online (Sandbox Code Playgroud)
PHP:
<?php
$json = $_POST['json'];
$person = json_decode($json);
$file = fopen('test.txt','w+');
fwrite($file, $person);
fclose($file);
echo 'success?';
?>
Run Code Online (Sandbox Code Playgroud)
它创建了文件,但它完全是空白的,不知道它可能是什么?
Thanx提前!
我有一个数据网格,我想在鼠标悬停在单元格上时显示项目编辑器(文本输入).
提前致谢.
我希望能够使用Moq正确测试类的初始化:
class ClassToTest
{
public ClassToTest()
{
Method1(@"C:\myfile.dat")
}
public virtual void Method1(string filename)
{
// mock this method
File.Create(filename);
}
}
Run Code Online (Sandbox Code Playgroud)
我以为我可以使用该CallBase属性来创建类的可测试版本,然后.Setup()用来确保Method1()不执行任何代码.
但是,创建Mock<ClassToTest>()它不会调用构造函数,如果它做了,那就太晚了Setup()!
如果这是不可能的,那么在确保构造函数正确运行的同时解决问题的最佳方法是什么?
编辑:为了使它更清楚,我添加了一个参数Method1()来获取文件名并添加了一些行为.我想写的测试将是以下的工作版本:
[Test]
public void ClassToTest_ShouldCreateFileOnInitialisation()
{
Mock<ClassToTest> mockClass = new Mock<ClassToTest>() { CallBase = true };
mockClass.Setup(x => x.Method1(It.IsAny<string>());
mockClass.Verify(x => x.Method1(@"C:\myfile.dat"));
}
Run Code Online (Sandbox Code Playgroud) 说我有这个构造函数:
/// <summary>
/// Example comment.
/// </summary>
public SftpConnection(string host, string username,
string password, int port) {...}
Run Code Online (Sandbox Code Playgroud)
有这些重载:
public SftpConnection(string host, string username, string password)
: this(host, username, password, 22) { }
public SftpConnection(string host, string username, int port)
: this(host, username, "", port) { }
public SftpConnection(string host, string username)
: this(host, username, "", 22) { }
Run Code Online (Sandbox Code Playgroud)
而在现实中,XML注释是相当大的,有param,example和exception元素等等.
有没有办法在重载中添加一个特殊的XML注释单行,这样他们就可以使用完全相同的注释,这样我就不需要复制粘贴整个巨大的原始注释了?
我想的是:<use cref="SftpConnection(string,string,string,int)" />当然不起作用.
我知道这个include元素,但我得到的印象是它从XML文件读取注释,我不想要 - 我希望注释仍然在代码中可见,但只有一次.
谢谢 …
在回顾一些Qt C++代码时,我遇到了这个问题:
class Foo
{
Q_OBJECT
signals:
virtual void someSignal(const QString& str, int n)
{
Q_UNUSED(str);
Q_UNUSED(n);
}
...
};
Run Code Online (Sandbox Code Playgroud)
现在,Qt信号不能有一个身体所以我很惊讶这甚至编译(也许是因为身体实际上是空的).我也没有看到将信号虚拟为......它不能有一个身体所以它怎么能被覆盖?
我在这里遗漏了什么,或者这是一个有效的代码味道?
只是想知道如何沿路径绘制箭头.路径将改变方向并经历几个不同的点.箭头设计用于向用户显示沿着他们需要行进的路径的方向.
我试过用刷子但它不起作用,因为我需要箭头来定位它们沿着路径自我...
这看起来应该很简单,但我无法想出办法.我需要一个选项卡来开始文本,但是在用户从列表中选择一个项目后,该文本会发生变化.我知道如何通过改变标签背景和颜色
mTabHost.getChildAt(index).setBackgroundColor();
Run Code Online (Sandbox Code Playgroud)
但是没有选项可以更改选项卡的指示器.我尝试过使用EditText.
private EditText tabName;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.statistics);
comm = new Communicator();
tabName = new EditText(this);
tabName.setText("BeginningText");
mTabHost = getTabHost();
mTabHost.addTab(mTabHost
.newTabSpec("tab_1_stat")
.setIndicator(User)
.setContent(R.id.meStatsTab));
mTabHost.addTab(mTabHost
.newTabSpec("tab_2_stat")
.setIndicator(tabName.getText())
.setContent(R.id.themStatsTab));
mTabHost.addTab(mTabHost
.newTabSpec("tab_3_stat")
.setIndicator("Archive")
.setContent(R.id.archiveStatsTab));
mTabHost.setOnTabChangedListener(this);
getTabWidget().getChildAt(1).setOnClickListener(new onThemTabClicked());
mTabHost.setCurrentTab(0);
onTabChanged("tab_1_stat");
Run Code Online (Sandbox Code Playgroud)
}
.....
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
tabName.setText("ChangedTabText");
Bundle extras = intent.getExtras();
themStats = extras.getStringArray("themStats");
mTabHost.setCurrentTab(1);
onTabChanged("tab_2_stat");
}
Run Code Online (Sandbox Code Playgroud)
这也不起作用,还有其他一些尝试.有任何想法吗?提前谢谢!
或者,我可以使用类似 viewWillAppear 的东西,只有切换选项卡不会调用 viewWillAppear - 如果我可以从那里可靠地访问 selectedItem 或 selectedIndex 。
目标是重新使用类似的表格视图,其中 3 个选项卡用不同过滤的数据填充表格。
我尝试覆盖 didSelect 并将应用程序委托用作 UITabBarDelegate,但收到错误“不允许更改由选项卡栏控制器管理的选项卡栏的委托”。
标签栏控制器 rootCt 位于应用程序委托中并且可以正常工作。
所以这就是我正在寻找的技巧 - 当索引更改时从根(标签栏)控制器获取通知。想法?
我正在使用MVC webform将记录插入到具有多个子记录的数据库中.在我的代码隐藏中,我首先使用dataRepository.Add(xx)创建一个新的主记录.现在我需要添加5个需要新创建记录的ID的子记录.我该如何检索?
我想获取一个没有路径的文件名(如果它是字符串的一部分)以及扩展名.
例如:
/path/to/file/fileName.txt # results in "fileName"
fileName.txt # results in "fileName"
/path/to/file/file.with.periods.txt # results in "file.with.periods"
Run Code Online (Sandbox Code Playgroud)
所以基本上,我想要删除之前的任何内容,包括最后一个"/"(如果存在)以及最后一个"." 以及之后的任何元字符.
很抱歉这样的新手问题,但我是perl的新手.
c# ×3
.net ×1
ajax ×1
android ×1
apache-flex ×1
asp.net-mvc ×1
c++ ×1
constructor ×1
datagrid ×1
drawing ×1
filepath ×1
iphone ×1
jquery ×1
json ×1
mocking ×1
moq ×1
notify ×1
overloading ×1
path ×1
perl ×1
php ×1
qt ×1
regex ×1
selecteditem ×1
tabs ×1
uitabbar ×1
unit-testing ×1
wpf ×1
xml ×1
xmldocument ×1